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