summaryrefslogtreecommitdiffstats
path: root/runtime/libgcry.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-05-16 09:49:22 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2013-05-16 09:49:22 +0200
commitafe14ce2f6a514d9e2bf43501f1a02008d9ddea6 (patch)
tree56c33b8994057a1f6406aa793ab8569afcf56ed6 /runtime/libgcry.h
parent3aeafbdfadc73860a16dc965c14728a3e50a216c (diff)
downloadrsyslog-afe14ce2f6a514d9e2bf43501f1a02008d9ddea6.tar.gz
rsyslog-afe14ce2f6a514d9e2bf43501f1a02008d9ddea6.tar.bz2
rsyslog-afe14ce2f6a514d9e2bf43501f1a02008d9ddea6.zip
complete handle multiple blocks in encrypted queue files
Diffstat (limited to 'runtime/libgcry.h')
-rw-r--r--runtime/libgcry.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/runtime/libgcry.h b/runtime/libgcry.h
index 819ac77c..2f700554 100644
--- a/runtime/libgcry.h
+++ b/runtime/libgcry.h
@@ -44,6 +44,9 @@ struct gcryfile_s {
int16_t readBufIdx;
int16_t readBufMaxIdx;
int8_t bDeleteOnClose; /* for queue support, similar to stream subsys */
+ ssize_t bytesToBlkEnd; /* number of bytes remaining in current crypto block
+ -1 means -> no end (still being writen to, queue files),
+ 0 means -> end of block, new one must be started. */
};
int gcryGetKeyFromFile(char *fn, char **key, unsigned *keylen);
@@ -60,6 +63,7 @@ rsRetVal rsgcryEncrypt(gcryfile pF, uchar *buf, size_t *len);
rsRetVal rsgcryDecrypt(gcryfile pF, uchar *buf, size_t *len);
int gcryGetKeyFromProg(char *cmd, char **key, unsigned *keylen);
rsRetVal gcryfileDeleteState(uchar *fn);
+rsRetVal gcryfileGetBytesLeftInBlock(gcryfile gf, ssize_t *left);
/* error states */
#define RSGCRYE_EI_OPEN 1 /* error opening .encinfo file */