if(dirEntry.type == __LINK)
if(dirEntry == null) return null; else if(dirEntry.type == __LINK)
	public VFS.DirectoryEntry _getDirectoryEntry(VFSSession session, String path,		Component comp)		throws IOException	{		FtpAddress address = new FtpAddress(path);		FtpClient client = _getFtpClient(session,address,true,comp);		if(client == null)			return null;		client.dataPort();		Reader _reader = client.list(address.path);		if(_reader == null)		{			// eg, file not found			return null;		}		BufferedReader reader = new BufferedReader(_reader);		String line = reader.readLine();		reader.close();		if(line != null)		{			if(line.startsWith("total"))			{				// ok, this really sucks.				// we were asked to get the directory				// entry for a directory. This stupid				// implementation will only work for				// the resolveSymlink() method. A proper				// version will be written some other time.				return new VFS.DirectoryEntry(null,null,null,					VFS.DirectoryEntry.DIRECTORY,0L,false);			}			else			{				VFS.DirectoryEntry dirEntry = lineToDirectoryEntry(line);				if(dirEntry.type == __LINK)					resolveSymlink(session,getFileParent(path),						dirEntry,comp);				return dirEntry;			}		}		else			return null;	}