#ifndef _KERBEROS_LSB_ADDR_COMP_H
#define _KERBEROS_LSB_ADDR_COMP_H
#pragma ident "@(#)lsb_addr_comp.h 1.4 93/02/04 SMI"
#include <kerberos/mit-copyright.h>
#include <kerberos/osconf.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef LSBFIRST
#define lsb_net_ulong_less(x, y) ((x < y) ? -1 : ((x > y) ? 1 : 0))
#define lsb_net_ushort_less(x, y) ((x < y) ? -1 : ((x > y) ? 1 : 0))
#else
#define u_char_comp(x, y) \
(((x) > (y)) ? (1) : (((x) == (y)) ? (0) : (-1)))
#define lsb_net_ulong_less(x, y) long_less_than((u_char *)&x, (u_char *)&y)
#define lsb_net_ushort_less(x, y) short_less_than((u_char *)&x, (u_char *)&y)
#define long_less_than(x, y) \
(u_char_comp((x)[3], (y)[3]) ? u_char_comp((x)[3], (y)[3]) : \
(u_char_comp((x)[2], (y)[2]) ? u_char_comp((x)[2], (y)[2]) : \
(u_char_comp((x)[1], (y)[1]) ? u_char_comp((x)[1], (y)[1]) : \
(u_char_comp((x)[0], (y)[0])))))
#define short_less_than(x, y) \
(u_char_comp((x)[1], (y)[1]) ? u_char_comp((x)[1], (y)[1]) : \
(u_char_comp((x)[0], (y)[0])))
#endif
#ifdef __cplusplus
}
#endif
#endif