QString QWsServer::computeAcceptV0( QString key1, QString key2, QString key3 ) { QString numStr1; QString numStr2; QChar carac; for ( int i=0 ; i<key1.size() ; i++ ) { carac = key1[ i ]; if ( carac.isDigit() ) numStr1.append( carac ); } for ( int i=0 ; i<key2.size() ; i++ ) { carac = key2[ i ]; if ( carac.isDigit() ) numStr2.append( carac ); } quint32 num1 = numStr1.toUInt(); quint32 num2 = numStr2.toUInt(); int numSpaces1 = key1.count( ' ' ); int numSpaces2 = key2.count( ' ' ); num1 /= numSpaces1; num2 /= numSpaces2; QString concat = serializeInt( num1 ) + serializeInt( num2 ) + key3; QByteArray md5 = QCryptographicHash::hash( concat.toLatin1(), QCryptographicHash::Md5 ); return QString( md5 ); }
int appel_externe(const char *fonction, unsigned short argc, arg * argv){ char* a = serializeString(fonction); char* b= serializeInt(argc,1); char* c = serializeTabArg(argc, argv); char* send= prepareMsgBeforeSend(a ,b , c); int val; if(sendData(send)==-1){ close(mySocket); return -1; } val=receiveData(); close(mySocket); return val; }
/** * Saves the tile to binary. * @param buffer pointer to buffer. */ void Tile::saveBinary(Uint8** buffer) const { serializeInt(buffer, serializationKey._mapDataID, _mapDataID[0]); serializeInt(buffer, serializationKey._mapDataID, _mapDataID[1]); serializeInt(buffer, serializationKey._mapDataID, _mapDataID[2]); serializeInt(buffer, serializationKey._mapDataID, _mapDataID[3]); serializeInt(buffer, serializationKey._mapDataSetID, _mapDataSetID[0]); serializeInt(buffer, serializationKey._mapDataSetID, _mapDataSetID[1]); serializeInt(buffer, serializationKey._mapDataSetID, _mapDataSetID[2]); serializeInt(buffer, serializationKey._mapDataSetID, _mapDataSetID[3]); serializeInt(buffer, serializationKey._smoke, _smoke); serializeInt(buffer, serializationKey._fire, _fire); Uint8 boolFields = (_discovered[0]?1:0) + (_discovered[1]?2:0) + (_discovered[2]?4:0); boolFields |= isUfoDoorOpen(1) ? 8 : 0; // west boolFields |= isUfoDoorOpen(2) ? 0x10 : 0; // north? serializeInt(buffer, serializationKey.boolFields, boolFields); }