diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2016-10-25 17:04:17 +0200 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2016-11-02 16:23:53 +0100 |
commit | de2a27e255b6ec834d11c005909b28a150c7c0db (patch) | |
tree | 9b6f61fa7f9d3cb05abf5e72b9fdb8d5ba9bdef7 /proto/rip/packets.c | |
parent | 7eec3988758cb4c19a0ab3bf90cab2a4914165be (diff) |
Add generic message authentication interface
Add generic interface for generating and verifying MACs (message
authentication codes). Replace multiple HMAC implementation with
a generic one.
Diffstat (limited to 'proto/rip/packets.c')
-rw-r--r-- | proto/rip/packets.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/proto/rip/packets.c b/proto/rip/packets.c index e026eaea..381b4771 100644 --- a/proto/rip/packets.c +++ b/proto/rip/packets.c @@ -11,6 +11,7 @@ #include "rip.h" #include "lib/md5.h" +#include "lib/mac.h" #define RIP_CMD_REQUEST 1 /* want info */ @@ -241,7 +242,7 @@ rip_fill_authentication(struct rip_proto *p, struct rip_iface *ifa, struct rip_p *plen += sizeof(struct rip_auth_tail) + RIP_MD5_LENGTH; - struct md5_context ctx; + struct hash_context ctx; md5_init(&ctx); md5_update(&ctx, (byte *) pkt, *plen); memcpy(tail->auth_data, md5_final(&ctx), RIP_MD5_LENGTH); @@ -315,7 +316,7 @@ rip_check_authentication(struct rip_proto *p, struct rip_iface *ifa, struct rip_ memcpy(received, tail->auth_data, RIP_MD5_LENGTH); strncpy(tail->auth_data, pass->password, RIP_MD5_LENGTH); - struct md5_context ctx; + struct hash_context ctx; md5_init(&ctx); md5_update(&ctx, (byte *) pkt, *plen); char *computed = md5_final(&ctx); |