*/
#ifndef lint
-static const char rcsid[] =
- "@(#) $Header: /tcpdump/master/tcpdump/print-krb.c,v 1.9 1999-10-07 23:47:11 mcr Exp $";
+static const char rcsid[] _U_ =
+ "@(#) $Header: /tcpdump/master/tcpdump/print-krb.c,v 1.23 2003-11-16 09:36:26 guy Exp $";
#endif
-#include <sys/param.h>
-#include <sys/time.h>
-#include <sys/socket.h>
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
-#include <netinet/in.h>
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <netinet/ip_var.h>
-#include <netinet/udp.h>
-#include <netinet/udp_var.h>
+#include <tcpdump-stdinc.h>
-#include <ctype.h>
-#include <errno.h>
#include <stdio.h>
#include "interface.h"
#include "addrtoname.h"
+#include "extract.h"
-const u_char *c_print(register const u_char *, register const u_char *);
-const u_char *krb4_print_hdr(const u_char *);
-void krb4_print(const u_char *);
-void krb_print(const u_char *, u_int);
-
+static const u_char *c_print(register const u_char *, register const u_char *);
+static const u_char *krb4_print_hdr(const u_char *);
+static void krb4_print(const u_char *);
#define AUTH_MSG_KDC_REQUEST 1<<1
#define AUTH_MSG_KDC_REPLY 2<<1
#define KERB_ERR_NULL_KEY 10
struct krb {
- u_char pvno; /* Protocol Version */
- u_char type; /* Type+B */
+ u_int8_t pvno; /* Protocol Version */
+ u_int8_t type; /* Type+B */
};
static char tstr[] = " [|kerberos]";
{ 0, NULL}
};
-
-/* little endian (unaligned) to host byte order */
-/* XXX need to look at this... */
-#define vtohlp(x) ((( ((char *)(x))[0] ) ) | \
- (( ((char *)(x))[1] ) << 8) | \
- (( ((char *)(x))[2] ) << 16) | \
- (( ((char *)(x))[3] ) << 24))
-#define vtohsp(x) ((( ((char *)(x))[0] ) ) | \
- (( ((char *)(x))[1] ) << 8))
-/* network (big endian) (unaligned) to host byte order */
-#define ntohlp(x) ((( ((char *)(x))[3] ) ) | \
- (( ((char *)(x))[2] ) << 8) | \
- (( ((char *)(x))[1] ) << 16) | \
- (( ((char *)(x))[0] ) << 24))
-#define ntohsp(x) ((( ((char *)(x))[1] ) ) | \
- (( ((char *)(x))[0] ) << 8))
-
-
-
-const u_char *
+static const u_char *
c_print(register const u_char *s, register const u_char *ep)
{
register u_char c;
return (s);
}
-const u_char *
+static const u_char *
krb4_print_hdr(const u_char *cp)
{
cp += 2;
#undef PRINT
}
-void
+static void
krb4_print(const u_char *cp)
{
register const struct krb *kp;
#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))
+#define KTOHSP(kp, cp) (IS_LENDIAN(kp) ? EXTRACT_LE_16BITS(cp) : EXTRACT_16BITS(cp))
kp = (struct krb *)cp;
}
void
-krb_print(const u_char *dat, u_int length)
+krb_print(const u_char *dat)
{
register const struct krb *kp;