protected void doDisconnect( boolean hard ) throws IOException { ListIterator iter = sessions.listIterator(); while (iter.hasNext()) { SmbSession ssn = (SmbSession)iter.next(); ssn.logoff( hard ); } socket.shutdownOutput(); out.close(); in.close(); socket.close(); digest = null; }
protected void doDisconnect( boolean hard ) throws IOException { ListIterator iter = sessions.listIterator(); try { while (iter.hasNext()) { SmbSession ssn = (SmbSession)iter.next(); ssn.logoff( hard ); } socket.shutdownOutput(); out.close(); in.close(); socket.close(); } finally { digest = null; socket = null; tconHostName = null; } }
protected void doDisconnect( boolean hard ) throws IOException { ListIterator iter = sessions.listIterator(); try { while (iter.hasNext()) { SmbSession ssn = (SmbSession)iter.next(); ssn.logoff( hard ); } socket.shutdownOutput(); out.close(); in.close(); socket.close(); } finally { digest = null; socket = null; tconHostName = null; } }
protected void doDisconnect( boolean hard ) throws IOException { ListIterator iter = sessions.listIterator(); try { while (iter.hasNext()) { SmbSession ssn = (SmbSession)iter.next(); ssn.logoff( hard ); } socket.shutdownOutput(); out.close(); in.close(); socket.close(); } finally { digest = null; socket = null; tconHostName = null; // >>SmbAuthenticator synchronized (CONNECTIONS) { CONNECTIONS.remove(this); } // SmbAuthenticator<< } }
synchronized SmbSession getSmbSession( NtlmPasswordAuthentication auth ) { SmbSession ssn; long now; ListIterator iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.matches( auth )) { ssn.auth = auth; return ssn; } } /* logoff old sessions */ if (SO_TIMEOUT > 0 && sessionExpiration < (now = System.currentTimeMillis())) { sessionExpiration = now + SO_TIMEOUT; iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.expiration < now ) { ssn.logoff( false ); } } } ssn = new SmbSession( address, port, localAddr, localPort, auth ); ssn.transport = this; sessions.add( ssn ); return ssn; } boolean matches( UniAddress address, int port, InetAddress localAddr, int localPort, String hostName ) {
synchronized SmbSession getSmbSession( NtlmPasswordAuthentication auth ) { SmbSession ssn; long now; ListIterator iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.matches( auth )) { ssn.auth = auth; return ssn; } } /* logoff old sessions */ if (SO_TIMEOUT > 0 && sessionExpiration < (now = System.currentTimeMillis())) { sessionExpiration = now + SO_TIMEOUT; iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.expiration < now ) { ssn.logoff( false ); } } } ssn = new SmbSession( address, port, localAddr, localPort, auth ); ssn.transport = this; sessions.add( ssn ); return ssn; } boolean matches( UniAddress address, int port, InetAddress localAddr, int localPort, String hostName ) {
ssn = (SmbSession)iter.next(); if( ssn.expiration < now ) { ssn.logoff( false );
} catch (SmbException se) { if (request instanceof SmbComTreeConnectAndX) { logoff(true);
} catch (SmbException se) { if (request instanceof SmbComTreeConnectAndX) { logoff(true);
synchronized SmbSession getSmbSession( NtlmPasswordAuthentication auth ) { SmbSession ssn; long now; ListIterator iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.matches( auth )) { ssn.auth = auth; return ssn; } } /* logoff old sessions */ if (SO_TIMEOUT > 0 && sessionExpiration < (now = System.currentTimeMillis())) { sessionExpiration = now + SO_TIMEOUT; iter = sessions.listIterator(); while( iter.hasNext() ) { ssn = (SmbSession)iter.next(); if( ssn.expiration < now ) { ssn.logoff( false ); } } } ssn = new SmbSession( address, port, localAddr, localPort, auth ); ssn.transport = this; sessions.add( ssn ); return ssn; } boolean matches( UniAddress address, int port, InetAddress localAddr, int localPort, String hostName ) {
} catch (SmbException se) { if (request instanceof SmbComTreeConnectAndX) { logoff(true);
} catch (SmbException se) { if (request instanceof SmbComTreeConnectAndX) { logoff(true);
logoff(true); connectionState = 0; throw se;
logoff(true); connectionState = 0; throw se;
logoff(true); connectionState = 0; throw se;
logoff(true); connectionState = 0; throw se;