Public feed #599584

Mine

public text v1 · immutable
Raw Edit
·published 2007-07-02 10:21 UTC
rendered paste body
// from sBot v2.2 -- atomiku is horrible
	while( true ) 
	{
		// Recieve one byte at a time, if >= 0 return false ( disconnected )
		iRecvVal = frecv( ircsock, (char *)&szRecvBuff[ iCurbyte ], 1, 0 );
		
		if( iRecvVal <= 0 )
		{
			closesocket( ircsock );
			return false;
		}
		
		switch( szRecvBuff[ iCurbyte ] )
		{
		case 0x0D: // 0x0D == \r 0x0A == \n
			szRecvBuff[ iCurbyte ] = 0;
			iCurbyte++;
			break;
		case 0x0A: // If we reach a newline, parse it ( incase we recieve more than 1 packet in a single buffer )
			szRecvBuff[ iCurbyte ] = 0;
			
#ifndef NO_DEBUG
			printf( "[S->C] - %s\n", szRecvBuff );
#endif

			ParseIRCLine( ircsock, szRecvBuff );
			iCurbyte = 0;
			break;
		default:
			iCurbyte++;
			break;
		}
	}