aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/plugins/af_alg/af_alg_crypter.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-07-09 17:55:52 +0200
committerMartin Willi <martin@revosec.ch>2012-07-16 14:55:07 +0200
commitae4411547a3b799e588cd2900f7c5088fbe16e3a (patch)
treedfca05d69018075a1f3d7aa62cd62dcebac839c9 /src/libstrongswan/plugins/af_alg/af_alg_crypter.c
parente3b2e900e635f13b783131e088ec17265c1186fe (diff)
downloadstrongswan-ae4411547a3b799e588cd2900f7c5088fbe16e3a.tar.bz2
strongswan-ae4411547a3b799e588cd2900f7c5088fbe16e3a.tar.xz
Check and forward syscall errors in AF_ALG
Diffstat (limited to 'src/libstrongswan/plugins/af_alg/af_alg_crypter.c')
-rw-r--r--src/libstrongswan/plugins/af_alg/af_alg_crypter.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/src/libstrongswan/plugins/af_alg/af_alg_crypter.c b/src/libstrongswan/plugins/af_alg/af_alg_crypter.c
index ed268c0c9..5d0976d95 100644
--- a/src/libstrongswan/plugins/af_alg/af_alg_crypter.c
+++ b/src/libstrongswan/plugins/af_alg/af_alg_crypter.c
@@ -137,13 +137,9 @@ METHOD(crypter_t, decrypt, bool,
if (dst)
{
*dst = chunk_alloc(data.len);
- this->ops->crypt(this->ops, ALG_OP_DECRYPT, iv, data, dst->ptr);
+ return this->ops->crypt(this->ops, ALG_OP_DECRYPT, iv, data, dst->ptr);
}
- else
- {
- this->ops->crypt(this->ops, ALG_OP_DECRYPT, iv, data, data.ptr);
- }
- return TRUE;
+ return this->ops->crypt(this->ops, ALG_OP_DECRYPT, iv, data, data.ptr);
}
METHOD(crypter_t, encrypt, bool,
@@ -152,13 +148,9 @@ METHOD(crypter_t, encrypt, bool,
if (dst)
{
*dst = chunk_alloc(data.len);
- this->ops->crypt(this->ops, ALG_OP_ENCRYPT, iv, data, dst->ptr);
- }
- else
- {
- this->ops->crypt(this->ops, ALG_OP_ENCRYPT, iv, data, data.ptr);
+ return this->ops->crypt(this->ops, ALG_OP_ENCRYPT, iv, data, dst->ptr);
}
- return TRUE;
+ return this->ops->crypt(this->ops, ALG_OP_ENCRYPT, iv, data, data.ptr);
}
METHOD(crypter_t, get_block_size, size_t,
@@ -182,8 +174,7 @@ METHOD(crypter_t, get_key_size, size_t,
METHOD(crypter_t, set_key, bool,
private_af_alg_crypter_t *this, chunk_t key)
{
- this->ops->set_key(this->ops, key);
- return TRUE;
+ return this->ops->set_key(this->ops, key);
}
METHOD(crypter_t, destroy, void,