crypto.h revision 290001
1#ifndef CRYPTO_H 2#define CRYPTO_H 3 4#include <string.h> 5#include <stdio.h> 6#include <stdlib.h> 7 8#include <ntp_fp.h> 9#include <ntp.h> 10#include <ntp_stdlib.h> 11#include <ntp_md5.h> /* provides OpenSSL digest API */ 12#include "utilities.h" 13#include "sntp-opts.h" 14 15#define LEN_PKT_MAC LEN_PKT_NOMAC + sizeof(u_int32) 16 17/* #include "sntp-opts.h" */ 18 19struct key { 20 struct key *next; 21 int key_id; 22 int key_len; 23 char type[10]; 24 char key_seq[64]; 25}; 26 27int auth_init(const char *keyfile, struct key **keys); 28void get_key(int key_id, struct key **d_key); 29int make_mac(char *pkt_data, int pkt_size, int mac_size, struct key *cmp_key, char *digest); 30int auth_md5(char *pkt_data, int pkt_size, int mac_size, struct key *cmp_key); 31 32#endif 33