internal void delete()
		{
			thread=null;
			try
			{ 
				if(ss!=null)ss.close();
				ss=null;
			}
			catch(Exception e)
			{
			}
		}
		internal PortWatcher(Session session, 
			String address, int lport, 
			String host, int rport,
			ServerSocketFactory factory) 
		{
			this.session=session;
			this.lport=lport;
			this.host=host;
			this.rport=rport;
			try
			{
				boundaddress=InetAddress.getByName(address);
				ss=(factory==null) ? 
					new ServerSocket(lport, 0, boundaddress) :
					factory.createServerSocket(lport, 0, boundaddress);
			}
			catch(Exception e)
			{ 
				Console.WriteLine(e);
				throw new JSchException("PortForwardingL: local port "+address+":"+lport+" cannot be bound.");
			}
		}