public boolean SendHeader() throws IOException
	{
		File l_fileAttribute;
		PrintStream l_printStream;
		Scanner l_readStream;
		
		String  l_basename;
		long	l_fileSize;
		
		/*
		 * Check if socket and/or filename are not null
		 */
		if( ( up_socket == null   ) || 
			( up_filename == null )  )
			return false;
		
		/*
		 * Get file attrbutes
		 */
		l_fileAttribute = up_filename;
		if( ( ! l_fileAttribute.exists() ) || 
			( ! l_fileAttribute.isFile() ) || 
			( ! l_fileAttribute.canRead() ) )
		{
			return false;
		}
		
		l_basename = l_fileAttribute.getName();
		l_fileSize = l_fileAttribute.length();
		
		/*
		 * Get in/out streams
		 */
		
		l_printStream = new PrintStream( up_socket.getOutputStream() );
		l_readStream = new Scanner( up_socket.getInputStream() );
		

		
		/*
		 * Send Basename and file size
		 */
		l_printStream.println(l_basename);
		l_printStream.println(Long.toString(l_fileSize));
		
		/*
		 * Retrieve server's response
		 */
		up_fileSize = l_fileSize;
		return l_readStream.nextLine().equals(ALLOWED);

	}