#define AUTH_VECTOR_LEN 16
#define CHAP_VALUE_LENGTH 16
#define MAX_STRING_LEN 254 /* RFC2138: string 0-253 octets */
+#define FR_MAX_VENDOR (1 << 24) /* RFC limitations */
#ifdef _LIBRADIUS
# define AUTH_HDR_LEN 20
int8_t tag; /* tag for tunneled attributes */
uint8_t encrypt; /* encryption method */
+ uint8_t length;
} ATTR_FLAGS;
/*
typedef struct value_pair {
const char *name;
- int attribute;
+ unsigned int attribute;
int vendor;
int type;
size_t length; /* of data */
int length, const uint8_t *data);
int rad_vp2attr(const RADIUS_PACKET *packet,
const RADIUS_PACKET *original, const char *secret,
- const VALUE_PAIR *vp, uint8_t *ptr);
+ const VALUE_PAIR *vp, uint8_t *ptr, size_t room);
/* valuepair.c */
VALUE_PAIR *pairalloc(DICT_ATTR *da);
+VALUE_PAIR *paircreate_raw(int attr, int vendor, int type, VALUE_PAIR *);
VALUE_PAIR *paircreate(int attr, int vendor, int type);
void pairfree(VALUE_PAIR **);
void pairbasicfree(VALUE_PAIR *pair);