masqmail

view src/md5/md5.h @ 72:ad034b57f3b2

fixed Debian bug 536060 (log files are closed after SIGHUP receival) Explanation: When run in daemon mode, first the log files are opened. They get assigned to the file descriptors 3 and 4 usually. Then std{in,out,err} are closed. When SIGHUP comes in, all open files are closes and masqmail reexecutes itself. The new masqmail instance opens the log files at fd 0 and 1 now, but std{in,out,err} are closed afterwards, thus the log files are closed. The fix is to close the log files before std{in,out,err} are closed, in case the log files have higher fds. After std{in,out,err} were closed, the log files get opened again, now. See also: http://bugs.debian.org/536060
author meillo@marmaro.de
date Wed, 16 Jun 2010 10:32:20 +0200
parents 08114f7dcc23
children 10da50168dab
line source
1 /* MD5.H - header file for MD5C.C
2 */
4 /* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
5 rights reserved.
7 License to copy and use this software is granted provided that it
8 is identified as the "RSA Data Security, Inc. MD5 Message-Digest
9 Algorithm" in all material mentioning or referencing this software
10 or this function.
12 License is also granted to make and use derivative works provided
13 that such works are identified as "derived from the RSA Data
14 Security, Inc. MD5 Message-Digest Algorithm" in all material
15 mentioning or referencing the derived work.
17 RSA Data Security, Inc. makes no representations concerning either
18 the merchantability of this software or the suitability of this
19 software for any particular purpose. It is provided "as is"
20 without express or implied warranty of any kind.
22 These notices must be retained in any copies of any part of this
23 documentation and/or software.
24 */
26 /* MD5 context. */
27 typedef struct {
28 UINT4 state[4]; /* state (ABCD) */
29 UINT4 count[2]; /* number of bits, modulo 2^64 (lsb first) */
30 unsigned char buffer[64]; /* input buffer */
31 } MD5_CTX;
33 void MD5Init PROTO_LIST((MD5_CTX *));
34 void MD5Update PROTO_LIST((MD5_CTX *, unsigned char *, unsigned int));
35 void MD5Final PROTO_LIST((unsigned char[16], MD5_CTX *));