]> git.ipfire.org Git - thirdparty/ntp.git/commitdiff
main.c:
authorJohannes Maximilian Kuehn <kuehn@ntp.org>
Wed, 10 Sep 2008 23:37:56 +0000 (23:37 +0000)
committerJohannes Maximilian Kuehn <kuehn@ntp.org>
Wed, 10 Sep 2008 23:37:56 +0000 (23:37 +0000)
  fixed includes
crypto.c, networking.c:
  Fixed compile errors

bk: 48c85a54KesCa_uVQgb4q_Mmqhtnxw

gsoc_sntp/crypto.c
gsoc_sntp/crypto.h
gsoc_sntp/main.c
gsoc_sntp/networking.c
gsoc_sntp/networking.h

index f3aea7fe96d97a48382b2cd4e670a6271d0d199d..f1d258439e6a1787bed08b79791580a7d08597b3 100644 (file)
@@ -41,7 +41,7 @@ auth_md5 (
        
        MD5Init(&ctx);
 
-       char *digest_data = (char *) malloc(sizeof(char) * (LEN_PKT_NOMAC + cmp_size));
+       char *digest_data = (char *) malloc(sizeof(char) * (LEN_PKT_NOMAC + cmp_key->key_len));
 
        for(a=0; a<LEN_PKT_NOMAC; a++)
                digest_data[a] = pkt_data[a];
@@ -75,7 +75,7 @@ auth_init (
        char kbuf[96];
        FILE *keyf = fopen(keyfile, "r"); 
        register int a, line_cnt, line_limit;
-       struct key *prev;
+       struct key *prev = NULL;
 
        if(keyf == NULL) {
                if(ENABLED_OPT(NORMALVERBOSE))
@@ -115,7 +115,7 @@ auth_init (
 #endif
 
                sscanf(kbuf, "%i %c %16s", &act->key_id, &act->type, act->key_seq);
-               act->key_len = strlen(key_seq);
+               act->key_len = strlen(act->key_seq);
 
 #ifdef DEBUG
                printf("sntp auth_init: key_id %i type %c with key %s\n", act->key_id, act->type, act->key_seq);
index ff223c9b4bae4a4c0a77b2aaf543c91ee329e795..b89d206416953bf9a95ca65ab67522d840c6fb91 100644 (file)
@@ -41,7 +41,7 @@ struct key {
        struct key *next;
 };
 
-int auth_md5(char *pkt_data, int mac_size, char *cmp_key, int cmp_size);
+int auth_md5(char *pkt_data, int mac_size, struct key *cmp_key);
 int auth_init(char *keyfile, struct key **keys);
 void get_key(int key_id, struct key **d_key);
 
index 6c18d5fa66e2ebd0da4cd419a337396204c0082a..d35d8c487692b145365900659a7a9ae062a7ce0a 100644 (file)
@@ -1,7 +1,7 @@
 #include <isc/result.h>
 #include <l_stdlib.h>
-#include <ntp.h>
 #include <ntp_fp.h>
+#include <ntp.h>
 #include <ntp_stdlib.h>
 #include <ntp_unixtime.h>
 #include <stdio.h>
@@ -86,7 +86,7 @@ sntp_main (
        }
 
        if(HAVE_OPT(KEYFILE)) {
-               auth_init((char *)OPT_ARG(KEYFILE), keys);
+               auth_init((char *)OPT_ARG(KEYFILE), &keys);
        }
 
 
index c76d37bbbbc0129417d05cb5070a77b0ac6c2e08..79ff4246fb9280f0043fa58975fd5a9701515ab7 100644 (file)
@@ -366,8 +366,9 @@ recv_bcst_data (
                        return BROADCAST_FAILED;
                        break;
 
-               default:
+/*             default: */
                        socklen_t ss_len = SOCKLEN(ras);
+
                        recv_bytes = recvfrom(rsock, rdata, rdata_len, 0, (struct sockaddr *) ras, (socklen_t *) &ss_len);
        }
 
@@ -395,7 +396,7 @@ recv_bcst_pkt (
 {
        struct sockaddr_storage sender;
        register int a;
-       int is_authentic, has_mac, orig_pkt_len;
+       int is_authentic, has_mac = 0, orig_pkt_len;
 
        char *rdata = (char *) malloc(sizeof(char) * 256);
 
@@ -570,13 +571,11 @@ recvpkt (
        register int a;
        int has_mac, is_authentic, orig_pkt_len;
 
-       l_fp org;
-
 
        /* Much space, just to be sure */
-       rdata = (char *) malloc(sizeof(char) * 512);
+       rdata = (char *) malloc(sizeof(char) * 256);
 
-       int pkt_len = recvdata(rsock, &sender, rdata, 512);
+       int pkt_len = recvdata(rsock, &sender, rdata, 256);
 
        if(!done) {
                /* Do something about it, first check for a maximum length of ntp packets,
@@ -646,7 +645,7 @@ recvpkt (
                                                if(ENABLED_OPT(AUTHENTICATION)) {
                                                        /* We want a authenticated packet */
                                                        if(ENABLED_OPT(NORMALVERBOSE)) {
-                                                               char *hostname = ss_to_str(sas);
+                                                               char *hostname = ss_to_str(&sender);
                                                                printf("sntp recvpkt: Broadcast packet received from %s is not authentic. Will discard this packet.\n", 
                                                                                hostname);
 
@@ -660,7 +659,7 @@ recvpkt (
                                                         * use it anyways 
                                                         */
                                                        if(ENABLED_OPT(NORMALVERBOSE)) {
-                                                               char *hostname = ss_to_str(sas);
+                                                               char *hostname = ss_to_str(&sender);
                                                                printf("sntp recvpkt: Broadcast packet received from %s is not authentic. Authentication not enforced.\n", 
                                                                                hostname);
 
@@ -673,7 +672,7 @@ recvpkt (
                                        else {
                                                /* Yay! Things worked out! */
                                                if(ENABLED_OPT(NORMALVERBOSE)) {
-                                                       char *hostname = ss_to_str(sas);
+                                                       char *hostname = ss_to_str(&sender);
                                                        printf("sntp recvpkt: Broadcast packet received from %s successfully authenticated using key id %i.\n", 
                                                                        hostname, rpkt->mac[0]);
 
index 2e3d1ae8ac68c2c5292d8e3708a6dde804640e32..8605ab204f71e8df56616843114aced6fa3630df 100644 (file)
@@ -24,6 +24,7 @@
 #include <strings.h>   
 #include <errno.h>
 #include <config.h>
+#include <netdb.h>
 #include <unistd.h>
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -34,6 +35,7 @@
 #include <ntp_fp.h>
 #include <ntp.h>
 
+#include "crypto.h"
 #include "log.h"
 #include "sntp-opts.h" 
 #include "utilities.h"