/usr/include/net-snmp/library/md5.h is in libsnmp-dev 5.7.3+dfsg-1.8ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | /*
* ** **************************************************************************
* ** md5.h -- Header file for implementation of MD5 Message Digest Algorithm **
* ** Updated: 2/13/90 by Ronald L. Rivest **
* ** (C) 1990 RSA Data Security, Inc. **
* ** **************************************************************************
*/
#ifndef MD5_H
#define MD5_H
#ifdef __cplusplus
extern "C" {
#endif
/*
* MDstruct is the data structure for a message digest computation.
*/
typedef struct {
unsigned int buffer[4]; /* Holds 4-word result of MD computation */
unsigned char count[8]; /* Number of bits processed so far */
unsigned int done; /* Nonzero means MD computation finished */
} MDstruct , *MDptr;
/*
* MDbegin(MD)
* ** Input: MD -- an MDptr
* ** Initialize the MDstruct prepatory to doing a message digest computation.
*/
NETSNMP_IMPORT void MDbegin(MDptr);
/*
* MDupdate(MD,X,count)
* ** Input: MD -- an MDptr
* ** X -- a pointer to an array of unsigned characters.
* ** count -- the number of bits of X to use (an unsigned int).
* ** Updates MD using the first ``count'' bits of X.
* ** The array pointed to by X is not modified.
* ** If count is not a multiple of 8, MDupdate uses high bits of last byte.
* ** This is the basic input routine for a user.
* ** The routine terminates the MD computation when count < 512, so
* ** every MD computation should end with one call to MDupdate with a
* ** count less than 512. Zero is OK for a count.
*/
NETSNMP_IMPORT int MDupdate(MDptr, const unsigned char *, unsigned int);
/*
* MDprint(MD)
* ** Input: MD -- an MDptr
* ** Prints message digest buffer MD as 32 hexadecimal digits.
* ** Order is from low-order byte of buffer[0] to high-order byte of buffer[3].
* ** Each byte is printed with high-order hexadecimal digit first.
*/
extern void MDprint(MDptr);
int MDchecksum(const u_char * data, size_t len, u_char * mac,
size_t maclen);
int MDsign(const u_char * data, size_t len, u_char * mac,
size_t maclen, const u_char * secret,
size_t secretlen);
void MDget(MDstruct * MD, u_char * buf, size_t buflen);
/*
* ** End of md5.h
* ****************************(cut)****************************************
*/
#ifdef __cplusplus
}
#endif
#endif /* MD5_H */
|