Просмотр исходного кода

mdata()->begin(), data()->cbegin().

The old versions may modify the string to include a \0 soon.
Bryan Drewery 7 лет назад
Родитель
Сommit
fc24faac96
4 измененных файлов с 14 добавлено и 14 удалено
  1. 2 2
      src/base64.cc
  2. 2 2
      src/crypto/aes_util.cc
  3. 4 4
      src/crypto/bf_util.cc
  4. 6 6
      src/crypto/dh_util.cc

+ 2 - 2
src/base64.cc

@@ -128,7 +128,7 @@ b64enc(const unsigned char *data, size_t len)
  */
 bd::String broken_base64Encode(const bd::String& string) {
   size_t len = string.length();
-  char *p = b64enc_bd((unsigned char*) string.data(), &len);
+  char *p = b64enc_bd((unsigned char*) string.cbegin(), &len);
   bd::String encoded(p, len);
   free(p);
   return encoded;
@@ -141,7 +141,7 @@ bd::String broken_base64Encode(const bd::String& string) {
  */
 bd::String broken_base64Decode(const bd::String& string) {
   size_t len = string.length();
-  char *p = b64dec_bd((unsigned char*) string.data(), &len);
+  char *p = b64dec_bd((unsigned char*) string.cbegin(), &len);
   bd::String decoded(p, len);
   free(p);
   return decoded;

+ 2 - 2
src/crypto/aes_util.cc

@@ -45,7 +45,7 @@ bd::String encrypt_string_cbc(const bd::String& key, bd::String data, bd::String
   data.resize(data.length() + padding, padding);
 
   AES_set_encrypt_key((const unsigned char *) key.c_str(), CRYPT_KEYBITS, &e_key);
-  AES_cbc_encrypt((const unsigned char*)data.data(), (unsigned char*)data.mdata(), data.length(), &e_key, (unsigned char*)IV.mdata(), AES_ENCRYPT);
+  AES_cbc_encrypt((const unsigned char*)data.cbegin(), (unsigned char*)data.begin(), data.length(), &e_key, (unsigned char*)IV.begin(), AES_ENCRYPT);
   OPENSSL_cleanse(&e_key, sizeof(e_key));
 
   return data;
@@ -79,7 +79,7 @@ bd::String decrypt_string_cbc(const bd::String& key, bd::String data, bd::String
 
   data.resize(data.length() - (data.length() % CRYPT_BLOCKSIZE));
   AES_set_decrypt_key((const unsigned char *) key.c_str(), CRYPT_KEYBITS, &d_key);
-  AES_cbc_encrypt((const unsigned char*)data.data(), (unsigned char*)data.mdata(), data.length(), &d_key, (unsigned char*)IV.mdata(), AES_DECRYPT);
+  AES_cbc_encrypt((const unsigned char*)data.cbegin(), (unsigned char*)data.begin(), data.length(), &d_key, (unsigned char*)IV.begin(), AES_DECRYPT);
   OPENSSL_cleanse(&d_key, sizeof(d_key));
 
   // How much padding?

+ 4 - 4
src/crypto/bf_util.cc

@@ -57,10 +57,10 @@ bd::String egg_bf_encrypt(bd::String in, const bd::String& key)
     datalen += 8 - (datalen % 8);
     in.resize(datalen, 0);
   }
-  BF_set_key(&bf_e_key, key.length(), (unsigned char *)key.data());
+  BF_set_key(&bf_e_key, key.length(), (unsigned char *)key.cbegin());
   bf_data data;
   size_t part;
-  unsigned char *s = (unsigned char *)in.data();
+  unsigned char *s = (unsigned char *)in.cbegin();
   for (size_t i = 0; i < in.length(); i += 8) {
     data.lr.left = *s++ << 24;
     data.lr.left += *s++ << 16;
@@ -105,11 +105,11 @@ bd::String egg_bf_decrypt(bd::String in, const bd::String& key)
   if (cut_off > 0)
     in.resize(in.length() - cut_off);
 
-  BF_set_key(&bf_d_key, key.length(), (unsigned char *)key.data());
+  BF_set_key(&bf_d_key, key.length(), (unsigned char *)key.cbegin());
   bf_data data;
   int val;
   size_t part;
-  char *s = (char *)in.data();
+  char *s = (char *)in.cbegin();
   for (size_t i = 0; i < in.length(); i += 12) {
     data.lr.left = 0;
     data.lr.right = 0;

+ 6 - 6
src/crypto/dh_util.cc

@@ -106,13 +106,13 @@ void DH1080_gen(bd::String& privateKey, bd::String& publicKeyB64) {
   pub_key = dh->pub_key;
 #endif
   privateKey.resize(BN_num_bytes(priv_key), 0);
-  BN_bn2bin(priv_key, reinterpret_cast<unsigned char*>(privateKey.mdata()));
+  BN_bn2bin(priv_key, reinterpret_cast<unsigned char*>(privateKey.begin()));
 
   // Get public key
   bd::String publicKey;
-  // Resize as the mdata() modification won't update the internal length, but resize() will
+  // Resize as the begin() modification won't update the internal length, but resize() will
   publicKey.resize(static_cast<size_t>(BN_num_bytes(pub_key)));
-  BN_bn2bin(pub_key, reinterpret_cast<unsigned char*>(publicKey.mdata()));;
+  BN_bn2bin(pub_key, reinterpret_cast<unsigned char*>(publicKey.begin()));;
 
   // base64 encode
   publicKeyB64 = fishBase64Encode(publicKey);
@@ -136,7 +136,7 @@ bool DH1080_comp(const bd::String privateKey, const bd::String theirPublicKeyB64
 #endif
 
   // Setup my private key
-  b_myPrivkey = BN_bin2bn(reinterpret_cast<const unsigned char*>(privateKey.data()), privateKey.length(), NULL);
+  b_myPrivkey = BN_bin2bn(reinterpret_cast<const unsigned char*>(privateKey.cbegin()), privateKey.length(), NULL);
 #if !defined(LIBRESSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L
   DH_set0_key(dh, NULL, b_myPrivkey);
 #else
@@ -145,7 +145,7 @@ bool DH1080_comp(const bd::String privateKey, const bd::String theirPublicKeyB64
 
   // Prep their public key
   bd::String theirPublicKey(fishBase64Decode(theirPublicKeyB64));
-  b_HisPubkey = BN_bin2bn(reinterpret_cast<const unsigned char*>(theirPublicKey.data()), theirPublicKey.length(), NULL);
+  b_HisPubkey = BN_bin2bn(reinterpret_cast<const unsigned char*>(theirPublicKey.cbegin()), theirPublicKey.length(), NULL);
 
   // Compute the Shared key
   char *key = (char *)calloc(1, DH_size(dh));
@@ -168,7 +168,7 @@ bool DH1080_comp(const bd::String privateKey, const bd::String theirPublicKeyB64
 
   SHA256_Init(&c);
   SHA256_Update(&c, key, len);
-  SHA256_Final(reinterpret_cast<unsigned char*>(SHA256Digest.mdata()), &c);
+  SHA256_Final(reinterpret_cast<unsigned char*>(SHA256Digest.begin()), &c);
   sharedKey = fishBase64Encode(SHA256Digest);
 
   free(key);