BOOL LLDataPackerBinaryBuffer::unpackBinaryDataFixed(U8 *value, S32 size, const char *name) { BOOL success = TRUE; success &= verifyLength(size, name); htonmemcpy(value, mCurBufferp, MVT_VARIABLE, size); mCurBufferp += size; return success; }
BOOL LLDataPackerBinaryBuffer::unpackColor4U(LLColor4U &value, const char *name) { BOOL success = TRUE; success &= verifyLength(4, name); htonmemcpy(value.mV, mCurBufferp, MVT_VARIABLE, 4); mCurBufferp += 4; return success; }
BOOL LLDataPackerBinaryBuffer::unpackColor4(LLColor4 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(16, name); htonmemcpy(value.mV, mCurBufferp, MVT_LLVector4, 16); mCurBufferp += 16; return success; }
BOOL LLDataPackerBinaryBuffer::unpackF32(F32 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(F32), name); htonmemcpy(&value, mCurBufferp, MVT_F32, 4); mCurBufferp += 4; return success; }
BOOL LLDataPackerBinaryBuffer::unpackVector3(LLVector3 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(12, name); htonmemcpy(value.mV, mCurBufferp, MVT_LLVector3, 12); mCurBufferp += 12; return success; }
BOOL LLDataPackerBinaryBuffer::unpackU16(U16 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(U16), name); htonmemcpy(&value, mCurBufferp, MVT_U16, 2); mCurBufferp += 2; return success; }
BOOL LLDataPackerBinaryBuffer::unpackU8(U8 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(U8), name); value = *mCurBufferp; mCurBufferp++; return success; }
BOOL LLDataPackerBinaryBuffer::unpackUUID(LLUUID &value, const char *name) { BOOL success = TRUE; success &= verifyLength(16, name); htonmemcpy(value.mData, mCurBufferp, MVT_LLUUID, 16); mCurBufferp += 16; return success; }
BOOL LLDataPackerBinaryBuffer::unpackBinaryData(U8 *value, S32 &size, const char *name) { BOOL success = TRUE; success &= verifyLength(4, name); htonmemcpy(&size, mCurBufferp, MVT_S32, 4); mCurBufferp += 4; success &= verifyLength(size, name); if (success) { htonmemcpy(value, mCurBufferp, MVT_VARIABLE, size); mCurBufferp += size; } else { llwarns << "LLDataPackerBinaryBuffer::unpackBinaryData would unpack invalid data, aborting!" << llendl; success = FALSE; } return success; }
BOOL LLDataPackerBinaryBuffer::unpackVector2(LLVector2 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(8, name); htonmemcpy(&value.mV[0], mCurBufferp, MVT_F32, 4); htonmemcpy(&value.mV[1], mCurBufferp+4, MVT_F32, 4); mCurBufferp += 8; return success; }
BOOL LLDataPackerBinaryBuffer::packColor4U(const LLColor4U &value, const char *name) { BOOL success = TRUE; success &= verifyLength(4, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value.mV, MVT_VARIABLE, 4); } mCurBufferp += 4; return success; }
BOOL LLDataPackerBinaryBuffer::packU16(const U16 value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(U16), name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, &value, MVT_U16, 2); } mCurBufferp += 2; return success; }
BOOL LLDataPackerBinaryBuffer::packU8(const U8 value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(U8), name); if (mWriteEnabled) { *mCurBufferp = value; } mCurBufferp++; return success; }
BOOL LLDataPackerBinaryBuffer::packBinaryDataFixed(const U8 *value, S32 size, const char *name) { BOOL success = TRUE; success &= verifyLength(size, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value, MVT_VARIABLE, size); } mCurBufferp += size; return success; }
BOOL LLDataPackerBinaryBuffer::unpackString(std::string& value, const char *name) { BOOL success = TRUE; S32 length = (S32)strlen((char *)mCurBufferp) + 1; /*Flawfinder: ignore*/ success &= verifyLength(length, name); value = std::string((char*)mCurBufferp); // We already assume NULL termination calling strlen() mCurBufferp += length; return success; }
BOOL LLDataPackerBinaryBuffer::packF32(const F32 value, const char *name) { BOOL success = TRUE; success &= verifyLength(sizeof(F32), name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, &value, MVT_F32, 4); } mCurBufferp += 4; return success; }
BOOL LLDataPackerBinaryBuffer::packUUID(const LLUUID &value, const char *name) { BOOL success = TRUE; success &= verifyLength(16, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value.mData, MVT_LLUUID, 16); } mCurBufferp += 16; return success; }
BOOL LLDataPackerBinaryBuffer::packVector3(const LLVector3 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(12, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value.mV, MVT_LLVector3, 12); } mCurBufferp += 12; return success; }
BOOL LLDataPackerBinaryBuffer::packVector2(const LLVector2 &value, const char *name) { BOOL success = TRUE; success &= verifyLength(8, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, &value.mV[0], MVT_F32, 4); htonmemcpy(mCurBufferp+4, &value.mV[1], MVT_F32, 4); } mCurBufferp += 8; return success; }
BOOL LLDataPackerBinaryBuffer::packString(const std::string& value, const char *name) { BOOL success = TRUE; S32 length = value.length()+1; success &= verifyLength(length, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value.c_str(), MVT_VARIABLE, length); } mCurBufferp += length; return success; }
BOOL LLDataPackerBinaryBuffer::packString(const char *value, const char *name) { BOOL success = TRUE; S32 length = (S32)strlen(value) + 1; /*Flawfinder: ignore*/ success &= verifyLength(length, name); if (mWriteEnabled) { htonmemcpy(mCurBufferp, value, MVT_VARIABLE, length); } mCurBufferp += length; return success; }