add crypto_cipher_rewind to reverse crypto_cipher_advance

svn:r957
This commit is contained in:
Roger Dingledine 2003-12-23 07:43:05 +00:00
parent 55a94cd497
commit bc8c6732cb
2 changed files with 9 additions and 2 deletions

View File

@ -807,6 +807,12 @@ int crypto_cipher_decrypt(crypto_cipher_env_t *env, unsigned char *from, unsigne
}
}
int
crypto_cipher_rewind(crypto_cipher_env_t *env, long delta)
{
return crypto_cipher_advance(env, -delta);
}
int
crypto_cipher_advance(crypto_cipher_env_t *env, long delta)
{
@ -841,8 +847,8 @@ crypto_new_digest_env(int type)
void
crypto_free_digest_env(crypto_digest_env_t *digest) {
assert(digest);
tor_free(digest);
if(digest)
free(digest);
}
void

View File

@ -92,6 +92,7 @@ int crypto_cipher_encrypt(crypto_cipher_env_t *env, unsigned char *from, unsigne
int crypto_cipher_decrypt(crypto_cipher_env_t *env, unsigned char *from, unsigned int fromlen, unsigned char *to);
/* only implemented for CRYPTO_CIPHER_AES_CTR */
int crypto_cipher_rewind(crypto_cipher_env_t *env, long delta);
int crypto_cipher_advance(crypto_cipher_env_t *env, long delta);
/* convenience function: wraps crypto_create_crypto_env, set_key, set_iv, and init. */