void execute( final Socket sock ) throws IOException, ServiceNotEnabledException, ServiceNotAuthorizedException { rawIn = new BufferedInputStream( sock.getInputStream() ); rawOut = new SafeBufferedOutputStream( sock.getOutputStream() ); if ( 0 < daemon.getTimeout() ) { sock.setSoTimeout( daemon.getTimeout() * 1000 ); } String cmd = new PacketLineIn( rawIn ).readStringRaw(); final int nul = cmd.indexOf( '\0' ); if ( nul >= 0 ) { // Newer clients hide a "host" header behind this byte. // Currently we don't use it for anything, so we ignore // this portion of the command. // cmd = cmd.substring( 0, nul ); } final DaemonService srv = getDaemon().matchService( cmd ); if ( srv == null ) { return; } sock.setSoTimeout( 0 ); srv.execute( this, cmd ); } }
public ReceivePack create( DaemonClient req, Repository db ) throws ServiceNotEnabledException, ServiceNotAuthorizedException { ReceivePack rp = new ReceivePack( db ); InetAddress peer = req.getRemoteAddress(); String host = peer.getCanonicalHostName(); if ( host == null ) { host = peer.getHostAddress(); } String name = "anonymous"; String email = name + "@" + host; rp.setRefLogIdent( new PersonIdent( name, email ) ); rp.setTimeout( getTimeout() ); return rp; } };
public UploadPack create( DaemonClient req, Repository db ) throws ServiceNotEnabledException, ServiceNotAuthorizedException { UploadPack up = new UploadPack( db ); up.setTimeout( getTimeout() ); up.setPackConfig( getPackConfig() ); return up; } };