diff options
| author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2024-05-22 20:51:58 +0300 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-22 20:51:58 +0300 | 
| commit | 6cc7dd09d5e69cf57e6de7fb568a0ad2693f9c9a (patch) | |
| tree | fab23811a5cedc1ebf01479c852ee92ff62b636c /indra/llmessage/llblowfishcipher.h | |
| parent | ef8f4819822288e044ea719feb6af7a1f4df4c4e (diff) | |
| parent | 7bb5afc11ee5a6af78302a8d76a9a619e2baaab2 (diff) | |
Merge pull request #1545 from Ansariel/DRTVWR-600-maint-A
Merge main into DRTVWR-600-maint-a
Diffstat (limited to 'indra/llmessage/llblowfishcipher.h')
| -rw-r--r-- | indra/llmessage/llblowfishcipher.h | 114 | 
1 files changed, 57 insertions, 57 deletions
diff --git a/indra/llmessage/llblowfishcipher.h b/indra/llmessage/llblowfishcipher.h index 65228df11f..59d6f159c5 100644 --- a/indra/llmessage/llblowfishcipher.h +++ b/indra/llmessage/llblowfishcipher.h @@ -1,57 +1,57 @@ -/**  - * @file llblowfishcipher.h - * @brief A symmetric block cipher, designed in 1993 by Bruce Schneier. - * We use it because it has an 8 byte block size, allowing encryption of - * two UUIDs and a timestamp (16x2 + 4 = 36 bytes) with only 40 bytes of - * output.  AES has a block size of 32 bytes, so this would require 64 bytes. - * - * $LicenseInfo:firstyear=2007&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - *  - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - *  - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU - * Lesser General Public License for more details. - *  - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA - *  - * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA - * $/LicenseInfo$ - */ - -#ifndef LLBLOWFISHCIPHER_H -#define LLBLOWFISHCIPHER_H - -#include "llcipher.h" - - -class LLBlowfishCipher : public LLCipher -{ -public: -	// Secret may be up to 56 bytes in length per Blowfish spec. -	LLBlowfishCipher(const U8* secret, size_t secret_size); -	virtual ~LLBlowfishCipher(); - -	// See llcipher.h for documentation. -	/*virtual*/ U32 encrypt(const U8* src, U32 src_len, U8* dst, U32 dst_len); -	/*virtual*/ U32 decrypt(const U8* src, U32 src_len, U8* dst, U32 dst_len); -	/*virtual*/ U32 requiredEncryptionSpace(U32 src_len) const; - -#ifdef _DEBUG -	static bool testHarness(); -#endif - -private: -	U8* mSecret; -	size_t mSecretSize; -}; - -#endif // LL_LLCRYPTO_H +/**
 + * @file llblowfishcipher.h
 + * @brief A symmetric block cipher, designed in 1993 by Bruce Schneier.
 + * We use it because it has an 8 byte block size, allowing encryption of
 + * two UUIDs and a timestamp (16x2 + 4 = 36 bytes) with only 40 bytes of
 + * output.  AES has a block size of 32 bytes, so this would require 64 bytes.
 + *
 + * $LicenseInfo:firstyear=2007&license=viewerlgpl$
 + * Second Life Viewer Source Code
 + * Copyright (C) 2010, Linden Research, Inc.
 + *
 + * This library is free software; you can redistribute it and/or
 + * modify it under the terms of the GNU Lesser General Public
 + * License as published by the Free Software Foundation;
 + * version 2.1 of the License only.
 + *
 + * This library is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 + * Lesser General Public License for more details.
 + *
 + * You should have received a copy of the GNU Lesser General Public
 + * License along with this library; if not, write to the Free Software
 + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 + *
 + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA
 + * $/LicenseInfo$
 + */
 +
 +#ifndef LLBLOWFISHCIPHER_H
 +#define LLBLOWFISHCIPHER_H
 +
 +#include "llcipher.h"
 +
 +
 +class LLBlowfishCipher : public LLCipher
 +{
 +public:
 +    // Secret may be up to 56 bytes in length per Blowfish spec.
 +    LLBlowfishCipher(const U8* secret, size_t secret_size);
 +    virtual ~LLBlowfishCipher();
 +
 +    // See llcipher.h for documentation.
 +    /*virtual*/ U32 encrypt(const U8* src, U32 src_len, U8* dst, U32 dst_len);
 +    /*virtual*/ U32 decrypt(const U8* src, U32 src_len, U8* dst, U32 dst_len);
 +    /*virtual*/ U32 requiredEncryptionSpace(U32 src_len) const;
 +
 +#ifdef _DEBUG
 +    static bool testHarness();
 +#endif
 +
 +private:
 +    U8* mSecret;
 +    size_t mSecretSize;
 +};
 +
 +#endif // LL_LLCRYPTO_H
  | 
