]> asedeno.scripts.mit.edu Git - 1ts-debian.git/blobdiff - zephyr/server/bdump.c
r4281@bucket (orig r271): kcr | 2008-01-21 14:50:52 -0500
[1ts-debian.git] / zephyr / server / bdump.c
index 9efc3b5e8897ada5d25d6884bd06014f6ca8a7df..eca728ee83a96aebd7a051229113219626cf1b1a 100644 (file)
@@ -83,7 +83,6 @@ return 0;
 
 static void close_bdump(void* arg);
 static Code_t bdump_send_loop(Server *server);
-static Code_t bdump_ask_for(char *inst);
 static Code_t bdump_recv_loop(Server *server);
 static void bdump_get_v12(ZNotice_t *, int, struct sockaddr_in *,
                               Server *);
@@ -115,10 +114,8 @@ static long ticket_time;
 #define TKTLIFETIME    120
 #define tkt_lifetime(val) ((long) val * 5L * 60L)
 
-#ifndef NOENCRYPTION
 extern C_Block serv_key;
 extern Sched   serv_ksched;
-#endif
 #endif /* HAVE_KRB4 */
 
 static Timer *bdump_timer;
@@ -153,9 +150,9 @@ bdump_offer(struct sockaddr_in *who)
 #ifndef HAVE_KRB4
     int bdump_port = IPPORT_RESERVED - 1;
 #endif /* !HAVE_KRB4 */
-#if 1
+
     zdbug((LOG_DEBUG, "bdump_offer"));
-#endif
+
 #if defined(HAVE_KRB4) || defined(HAVE_KRB5)
     /* 
      * when using kerberos server-server authentication, we can
@@ -183,7 +180,7 @@ bdump_offer(struct sockaddr_in *who)
        return;
     }
     if (!bdump_sin.sin_port) {
-       int len = sizeof(bdump_sin);
+       unsigned int len = sizeof(bdump_sin);
 
        if (getsockname(bdump_socket,
                        (struct sockaddr *) &bdump_sin, &len) < 0) {
@@ -234,11 +231,9 @@ bdump_offer(struct sockaddr_in *who)
     send_list(ACKED, srv_addr.sin_port, ZEPHYR_ADMIN_CLASS, bdump_version,
              ADMIN_BDUMP, myname, "", lyst, 2);
        
-#if 1
     zdbug((LOG_DEBUG,"bdump_offer: address is %s/%d\n",
           inet_ntoa(bdump_sin.sin_addr),
           ntohs(bdump_sin.sin_port)));
-#endif
     return;
 }
 
@@ -252,7 +247,7 @@ bdump_send(void)
     struct sockaddr_in from;
     Server *server;
     Code_t retval;
-    int fromlen = sizeof(from);
+    unsigned int fromlen = sizeof(from);
     int on = 1;
 #ifdef _POSIX_VERSION
     struct sigaction action;
@@ -272,16 +267,14 @@ bdump_send(void)
     /* may be moved into kstuff.c */
     krb5_principal principal;
     krb5_data k5data;
-    krb5_ap_rep_enc_part *rep;
     krb5_keytab kt;
 #endif
 #if !defined(HAVE_KRB4) && !defined(HAVE_KRB5)
     unsigned short fromport;
 #endif /* HAVE_KRB4 */
  
-#if 1
     zdbug((LOG_DEBUG, "bdump_send"));
-#endif
+
     /* accept the connection, and send the brain dump */
     live_socket = accept(bdump_socket, (struct sockaddr *) &from, &fromlen);
     if (live_socket < 0) {
@@ -314,10 +307,9 @@ bdump_send(void)
        syslog(LOG_ERR, "bdump_send: unknown server?");
        server = limbo_server;
     }
-#if 1
+
     zdbug((LOG_DEBUG, "bdump_send: connection from %s/%d",
           inet_ntoa(from.sin_addr), ntohs(from.sin_port)));
-#endif
 
     bdumping = 1;
     server->dumping = 1;
@@ -509,18 +501,16 @@ bdump_send(void)
        cleanup(server);
        return;
     }
-#if 1
+
     zdbug((LOG_DEBUG, "bdump_send: finished"));
-#endif
+
     if (server != limbo_server) {
        /* set this guy to be up, and schedule a hello */
        server->state = SERV_UP;
        timer_reset(server->timer);
        server->timer = timer_set_rel(0L, server_timo, server);
     }
-#if 0
-    zdbug((LOG_DEBUG,"cleanup sbd"));
-#endif
+
     shutdown_file_pointers();
 
 #ifdef _POSIX_VERSION
@@ -628,9 +618,8 @@ bdump_get_v12 (ZNotice_t *notice,
     if (setsockopt(live_socket, SOL_SOCKET, SO_KEEPALIVE, (char *)&on,
                   sizeof(on)) < 0)
        syslog(LOG_WARNING, "bdump_get: setsockopt (SO_KEEPALIVE): %m");
-#if 1
+
     zdbug((LOG_DEBUG, "bdump_get: connected"));
-#endif
  
     /* Now begin the brain dump. */
 #if defined(HAVE_KRB4) || defined(HAVE_KRB5)
@@ -799,17 +788,17 @@ bdump_get_v12 (ZNotice_t *notice,
        cleanup(server);
        return;
     }
-#if 1
+
     zdbug((LOG_DEBUG, "bdump_get: gbd finished"));
-#endif
+
     /* set this guy to be up, and schedule a hello */
     server->state = SERV_UP;
     timer_reset(server->timer);
     server->timer = timer_set_rel(0L, server_timo, server);
 
-#if 1
+
     zdbug((LOG_DEBUG,"cleanup gbd"));
-#endif
+
     shutdown_file_pointers();
 #ifdef _POSIX_VERSION
     action.sa_handler = SIG_DFL;
@@ -835,12 +824,11 @@ bdump_get(ZNotice_t *notice,
 
     proc = NULL;
 
-#if 1
     if (zdebug) {
        syslog(LOG_DEBUG, "bdump_get: bdump v%s avail %s",
               notice->z_class_inst, inet_ntoa(who->sin_addr));
     }
-#endif
+
     if (strcmp (notice->z_class_inst, "1.2") == 0)
        proc = bdump_get_v12;
 
@@ -981,9 +969,8 @@ cleanup(Server *server)
     struct sigaction action;
 #endif
 
-#if 1
     zdbug((LOG_DEBUG, "bdump cleanup"));
-#endif
+
     if (server != limbo_server) {
        server->state = SERV_DEAD;
        timer_reset(server->timer);
@@ -1010,18 +997,14 @@ get_tgt(void)
      * at least INST_SZ bytes long. */
     static char buf[INST_SZ + 1] = SERVER_INSTANCE;
     int retval = 0;
-    CREDENTIALS cred;
-#ifndef NOENCRYPTION
-    Sched *s;
-#endif
     
     /* have they expired ? */
     if (ticket_time < NOW - tkt_lifetime(TKTLIFETIME) + (15L * 60L)) {
        /* +15 for leeway */
-#if 0
+
        zdbug((LOG_DEBUG,"get new tickets: %d %d %d", ticket_time, NOW,
               NOW - tkt_lifetime(TKTLIFETIME) + 15L));
-#endif
+
        dest_tkt();
 
        retval = krb_get_svc_in_tkt(SERVER_SERVICE, buf, ZGetRealm(),
@@ -1036,17 +1019,15 @@ get_tgt(void)
            ticket_time = NOW;
        }
 
-#ifndef NOENCRYPTION
        retval = read_service_key(SERVER_SERVICE, SERVER_INSTANCE,
                                  ZGetRealm(), 0 /*kvno*/,
-                                 srvtab_file, serv_key);
+                                 srvtab_file, (char *)serv_key);
        if (retval != KSUCCESS) {
            syslog(LOG_ERR, "get_tgt: read_service_key: %s",
                   krb_get_err_text(retval));
            return 1;
        }
        des_key_sched(serv_key, serv_ksched.s);
-#endif /* !NOENCRYPTION */
     }
 #ifdef HAVE_KRB5       
     /* XXX */
@@ -1113,13 +1094,10 @@ close_bdump(void *arg)
        close(bdump_socket);
        nfds = srv_socket + 1;
        bdump_socket = -1;
-#if 1
+
        zdbug((LOG_DEBUG, "bdump not used"));
-#endif
     } else {
-#if 1
        zdbug((LOG_DEBUG, "bdump not open"));
-#endif
     }
     return;
 }
@@ -1138,7 +1116,7 @@ bdump_recv_loop(Server *server)
     Client *client = NULL;
     struct sockaddr_in who;
 #ifdef HAVE_KRB5
-    char buf[512];
+    unsigned char buf[512];
     int blen;
 #endif
 #if defined(HAVE_KRB4) || defined(HAVE_KRB5)    
@@ -1149,9 +1127,7 @@ bdump_recv_loop(Server *server)
 #endif /* HAVE_KRB4 */
     ZRealm *realm = NULL;
  
-#if 1
     zdbug((LOG_DEBUG, "bdump recv loop"));
-#endif
        
     /* do the inverse of bdump_send_loop, registering stuff on the fly */
     while (1) {
@@ -1264,11 +1240,11 @@ bdump_recv_loop(Server *server)
                        syslog(LOG_ERR,"brl bad cblk read: %s (%s)",
                               error_message(retval), cp);
                    } else {
-                       des_ecb_encrypt(cblock, Z_keydata(client->session_keyblock),
+                       des_ecb_encrypt((C_Block *)cblock, (C_Block *)Z_keydata(client->session_keyblock),
                                        serv_ksched.s, DES_DECRYPT);
                    }
                } else if (*cp == 'Z') { /* Zcode! Long live the new flesh! */
-                   retval = ZReadZcode(cp, buf, sizeof(buf), &blen);
+                   retval = ZReadZcode((unsigned char *)cp, buf, sizeof(buf), &blen);
                    if (retval != ZERR_NONE) {
                        syslog(LOG_ERR,"brl bad cblk read: %s (%s)",
                               error_message(retval), cp);
@@ -1298,12 +1274,8 @@ bdump_recv_loop(Server *server)
                    syslog(LOG_ERR,"brl bad cblk read: %s (%s)",
                           error_message(retval), cp);
                } else {
-#ifdef NOENCRYPTION
-                   memcpy(cblock, client->session_key, sizeof(C_Block));
-#else
                    des_ecb_encrypt(cblock, client->session_key, serv_ksched.s,
                                    DES_DECRYPT);
-#endif
                }
            }
 #endif /* HAVE_KRB4 */
@@ -1329,7 +1301,7 @@ bdump_recv_loop(Server *server)
                           error_message(retval));
                    return retval;
                }
-           } /* else 
+           } /* else */
                 /* Other side tried to send us subs for a realm we didn't
                    know about, and so we drop them silently */
        
@@ -1349,9 +1321,7 @@ bdump_send_loop(Server *server)
 {
     Code_t retval;
 
-#if 1
     zdbug((LOG_DEBUG, "bdump send loop"));
-#endif
 
     retval = uloc_send_locations();
     if (retval != ZERR_NONE)
@@ -1374,9 +1344,8 @@ send_done(void)
 {
     Code_t retval;
  
-#if 1
     zdbug((LOG_DEBUG, "send_done"));
-#endif
+
     retval = send_normal_tcp(SERVACK, bdump_sin.sin_port, ZEPHYR_ADMIN_CLASS,
                             "", ADMIN_DONE, myname, "", NULL, 0);
     return retval;
@@ -1568,18 +1537,12 @@ extract_sin(ZNotice_t *notice, struct sockaddr_in *target)
 
     buf = cp;
     if (!notice->z_message_len || *buf == '\0') {
-#if 0
-       zdbug((LOG_DEBUG,"no addr"));
-#endif
        return ZSRV_PKSHORT;
     }
     target->sin_addr.s_addr = inet_addr(cp);
  
     cp += (strlen(cp) + 1);    /* past the null */
     if ((cp >= notice->z_message + notice->z_message_len) || (*cp == '\0')) {
-#if 0
-       zdbug((LOG_DEBUG, "no port"));
-#endif
        return(ZSRV_PKSHORT);
     }
     target->sin_port = htons((u_short) atoi(cp));