Refactor crypto error handling to be more like TLS error handling:
commitf6dbe5a0d42dcf82d440ef24b7a879854c3da14f
authorNick Mathewson <nickm@torproject.org>
Mon, 26 Apr 2004 18:09:50 +0000 (26 18:09 +0000)
committerNick Mathewson <nickm@torproject.org>
Mon, 26 Apr 2004 18:09:50 +0000 (26 18:09 +0000)
tree94476491174ca63cc79c4d105b940def1ab9c8f4
parentb410dff6c078022a7478ce2d17c07ccb38104081
Refactor crypto error handling to be more like TLS error handling:
crypto_perror is a no-no, since an operation can set more than one
error.

Also, fix a bug in the unix crypto_seed_rng: mixing stdio with
/dev/urandom is a bad idea, since fopen can make all kinds of weird
extraneous syscalls (mmap, fcntl, stat64, etc.) and since fread tends
to buffer data in big chunks, thus depleting the entropy pool.

svn:r1717
src/common/crypto.c
src/common/crypto.h
src/or/circuit.c
src/or/router.c
src/or/test.c