summaryrefslogtreecommitdiffstats
path: root/contrib/tcpdump/print-krb.c
diff options
context:
space:
mode:
authorfenner <fenner@FreeBSD.org>1998-09-15 19:36:32 +0000
committerfenner <fenner@FreeBSD.org>1998-09-15 19:36:32 +0000
commitcfc42b58f229425374e675f86614cf26ffa356e4 (patch)
tree6bd786e664682d3877b9cca3efa525ac67d8e005 /contrib/tcpdump/print-krb.c
parenta9b9c86c8a0ccde5c1480bf5a0ba250d949a6d65 (diff)
downloadFreeBSD-src-cfc42b58f229425374e675f86614cf26ffa356e4.zip
FreeBSD-src-cfc42b58f229425374e675f86614cf26ffa356e4.tar.gz
Virgin import of LBL tcpdump v3.4
Diffstat (limited to 'contrib/tcpdump/print-krb.c')
-rw-r--r--contrib/tcpdump/print-krb.c104
1 files changed, 49 insertions, 55 deletions
diff --git a/contrib/tcpdump/print-krb.c b/contrib/tcpdump/print-krb.c
index 99cb581..eca6265 100644
--- a/contrib/tcpdump/print-krb.c
+++ b/contrib/tcpdump/print-krb.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 1996
+ * Copyright (c) 1995, 1996, 1997
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -23,7 +23,7 @@
#ifndef lint
static const char rcsid[] =
- "@(#) $Header: print-krb.c,v 1.8 96/12/10 23:17:39 leres Exp $";
+ "@(#) $Header: print-krb.c,v 1.9 97/04/26 14:01:45 leres Exp $";
#endif
#include <sys/param.h>
@@ -73,38 +73,38 @@ void krb_print(const u_char *, u_int);
#define KERB_ERR_NULL_KEY 10
struct krb {
- u_char pvno; /* Protocol Version */
- u_char type; /* Type+B */
+ u_char pvno; /* Protocol Version */
+ u_char type; /* Type+B */
};
static char tstr[] = " [|kerberos]";
static struct tok type2str[] = {
- { AUTH_MSG_KDC_REQUEST, "KDC_REQUEST" },
- { AUTH_MSG_KDC_REPLY, "KDC_REPLY" },
- { AUTH_MSG_APPL_REQUEST, "APPL_REQUEST" },
- { AUTH_MSG_APPL_REQUEST_MUTUAL, "APPL_REQUEST_MUTUAL" },
- { AUTH_MSG_ERR_REPLY, "ERR_REPLY" },
- { AUTH_MSG_PRIVATE, "PRIVATE" },
- { AUTH_MSG_SAFE, "SAFE" },
- { AUTH_MSG_APPL_ERR, "APPL_ERR" },
- { AUTH_MSG_DIE, "DIE" },
- { 0, NULL }
+ { AUTH_MSG_KDC_REQUEST, "KDC_REQUEST" },
+ { AUTH_MSG_KDC_REPLY, "KDC_REPLY" },
+ { AUTH_MSG_APPL_REQUEST, "APPL_REQUEST" },
+ { AUTH_MSG_APPL_REQUEST_MUTUAL, "APPL_REQUEST_MUTUAL" },
+ { AUTH_MSG_ERR_REPLY, "ERR_REPLY" },
+ { AUTH_MSG_PRIVATE, "PRIVATE" },
+ { AUTH_MSG_SAFE, "SAFE" },
+ { AUTH_MSG_APPL_ERR, "APPL_ERR" },
+ { AUTH_MSG_DIE, "DIE" },
+ { 0, NULL }
};
static struct tok kerr2str[] = {
- { KERB_ERR_OK, "OK" },
- { KERB_ERR_NAME_EXP, "NAME_EXP" },
- { KERB_ERR_SERVICE_EXP, "SERVICE_EXP" },
- { KERB_ERR_AUTH_EXP, "AUTH_EXP" },
- { KERB_ERR_PKT_VER, "PKT_VER" },
- { KERB_ERR_NAME_MAST_KEY_VER, "NAME_MAST_KEY_VER" },
- { KERB_ERR_SERV_MAST_KEY_VER, "SERV_MAST_KEY_VER" },
- { KERB_ERR_BYTE_ORDER, "BYTE_ORDER" },
- { KERB_ERR_PRINCIPAL_UNKNOWN, "PRINCIPAL_UNKNOWN" },
- { KERB_ERR_PRINCIPAL_NOT_UNIQUE, "PRINCIPAL_NOT_UNIQUE" },
- { KERB_ERR_NULL_KEY, "NULL_KEY"},
- { 0, NULL}
+ { KERB_ERR_OK, "OK" },
+ { KERB_ERR_NAME_EXP, "NAME_EXP" },
+ { KERB_ERR_SERVICE_EXP, "SERVICE_EXP" },
+ { KERB_ERR_AUTH_EXP, "AUTH_EXP" },
+ { KERB_ERR_PKT_VER, "PKT_VER" },
+ { KERB_ERR_NAME_MAST_KEY_VER, "NAME_MAST_KEY_VER" },
+ { KERB_ERR_SERV_MAST_KEY_VER, "SERV_MAST_KEY_VER" },
+ { KERB_ERR_BYTE_ORDER, "BYTE_ORDER" },
+ { KERB_ERR_PRINCIPAL_UNKNOWN, "PRINCIPAL_UNKNOWN" },
+ { KERB_ERR_PRINCIPAL_NOT_UNIQUE,"PRINCIPAL_NOT_UNIQUE" },
+ { KERB_ERR_NULL_KEY, "NULL_KEY"},
+ { 0, NULL}
};
@@ -133,7 +133,7 @@ c_print(register const u_char *s, register const u_char *ep)
register int flag;
flag = 1;
- while (ep == NULL || s < ep) {
+ while (s < ep) {
c = *s++;
if (c == '\0') {
flag = 0;
@@ -152,27 +152,26 @@ c_print(register const u_char *s, register const u_char *ep)
}
if (flag)
return NULL;
- return(s);
+ return (s);
}
const u_char *
krb4_print_hdr(const u_char *cp)
{
- cp+=2;
+ cp += 2;
-#define PRINT if ((cp=c_print(cp, snapend))==NULL) goto trunc
+#define PRINT if ((cp = c_print(cp, snapend)) == NULL) goto trunc
- TCHECK2(cp, 0);
PRINT;
- TCHECK2(cp, 0);
- putchar('.'); PRINT;
- TCHECK2(cp, 0);
- putchar('@'); PRINT;
- return(cp);
+ putchar('.');
+ PRINT;
+ putchar('@');
+ PRINT;
+ return (cp);
trunc:
fputs(tstr, stdout);
- return(NULL);
+ return (NULL);
#undef PRINT
}
@@ -184,7 +183,7 @@ krb4_print(const u_char *cp)
u_char type;
u_short len;
-#define PRINT if ((cp=c_print(cp, snapend))==NULL) goto trunc
+#define PRINT if ((cp = c_print(cp, snapend)) == NULL) goto trunc
/* True if struct krb is little endian */
#define IS_LENDIAN(kp) (((kp)->type & 0x01) != 0)
#define KTOHSP(kp, cp) (IS_LENDIAN(kp) ? vtohsp(cp) : ntohsp(cp))
@@ -206,46 +205,41 @@ krb4_print(const u_char *cp)
case AUTH_MSG_KDC_REQUEST:
if ((cp = krb4_print_hdr(cp)) == NULL)
return;
- cp += 4; /* ctime */
- TCHECK2(cp, 0);
- printf(" %dmin ", *cp++ * 5);
- TCHECK2(cp, 0);
- PRINT;
- TCHECK2(cp, 0);
- putchar('.'); PRINT;
- break;
+ cp += 4; /* ctime */
+ TCHECK(*cp);
+ printf(" %dmin ", *cp++ * 5);
+ PRINT;
+ putchar('.');
+ PRINT;
+ break;
case AUTH_MSG_APPL_REQUEST:
cp += 2;
- TCHECK2(cp, 0);
+ TCHECK(*cp);
printf("v%d ", *cp++);
- TCHECK2(cp, 0);
PRINT;
- TCHECK2(cp, 0);
+ TCHECK(*cp);
printf(" (%d)", *cp++);
- TCHECK2(cp, 0);
+ TCHECK(*cp);
printf(" (%d)", *cp);
- TCHECK2(cp, 0);
break;
case AUTH_MSG_KDC_REPLY:
if ((cp = krb4_print_hdr(cp)) == NULL)
return;
cp += 10; /* timestamp + n + exp + kvno */
- TCHECK2(cp, 0);
+ TCHECK2(*cp, sizeof(short));
len = KTOHSP(kp, cp);
printf(" (%d)", len);
- TCHECK2(cp, 0);
break;
case AUTH_MSG_ERR_REPLY:
if ((cp = krb4_print_hdr(cp)) == NULL)
return;
cp += 4; /* timestamp */
- TCHECK2(cp, 0);
+ TCHECK2(*cp, sizeof(short));
printf(" %s ", tok2str(kerr2str, NULL, KTOHSP(kp, cp)));
cp += 4;
- TCHECK2(cp, 0);
PRINT;
break;
OpenPOWER on IntegriCloud