X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=crypt.h;h=c430406f3c269b7d23e0d05fd95a8fe01bfe2f8a;hb=a9126f461792a84c760162ecb25100f1593d427d;hp=3d1daf56fbf6d45df72c0a1a74f6cbbc0720539f;hpb=471684761a2039bbc89aa1e3c33c62de6bef86cf;p=paraslash.git diff --git a/crypt.h b/crypt.h index 3d1daf56..c430406f 100644 --- a/crypt.h +++ b/crypt.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2007 Andre Noll + * Copyright (C) 2005-2009 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -18,6 +18,19 @@ int para_decrypt_buffer(char *key_file, unsigned char *outbuf, unsigned char *in int get_rsa_key(char *key_file, RSA **rsa, int private); void rsa_free(RSA *rsa); +void get_random_bytes_or_die(unsigned char *buf, int num); +void init_random_seed_or_die(void); + +struct rc4_context { + int fd; + RC4_KEY recv_key; + RC4_KEY send_key; +}; +int rc4_send_bin_buffer(struct rc4_context *rc4c, const char *buf, size_t len); +int rc4_send_buffer(struct rc4_context *rc4c, const char *buf); +__printf_2_3 int rc4_send_va_buffer(struct rc4_context *rc4c, const char *fmt, ...); +int rc4_recv_bin_buffer(struct rc4_context *rcc, char *buf, size_t size); +int rc4_recv_buffer(struct rc4_context *rcc, char *buf, size_t size); /** \cond used to distinguish between loading of private/public key */ #define LOAD_PUBLIC_KEY 0