#endif
struct cmp {
- int attribute;
- int otherattr;
+ unsigned int attribute;
+ unsigned int otherattr;
void *instance; /* module instance */
RAD_COMPARE_FUNC compare;
struct cmp *next;
/*
* Find a comparison function for two attributes.
*/
-int radius_find_compare(int attribute)
+int radius_find_compare(unsigned int attribute)
{
struct cmp *c;
/*
* See what attribute we want to compare with.
*/
-static int otherattr(int attr)
+static int otherattr(unsigned int attr)
{
struct cmp *c;
* For example, PW_GROUP in a check item needs to be compared
* with PW_USER_NAME in the incoming request.
*/
-int paircompare_register(int attr, int compare_attr, RAD_COMPARE_FUNC fun, void *instance)
+int paircompare_register(unsigned int attr, int compare_attr, RAD_COMPARE_FUNC fun, void *instance)
{
struct cmp *c;
/*
* Unregister a function.
*/
-void paircompare_unregister(int attr, RAD_COMPARE_FUNC fun)
+void paircompare_unregister(unsigned int attr, RAD_COMPARE_FUNC fun)
{
struct cmp *c, *last;
try_again:
if (other >= 0) {
for (; auth_item != NULL; auth_item = auth_item->next) {
- if (auth_item->attribute == other || other == 0)
+ if (auth_item->attribute == (unsigned int) other || other == 0)
break;
}
}
* Don't move 'fallthrough' over.
*/
if (i->attribute == PW_FALL_THROUGH) {
+ tailfrom = i;
continue;
}
vp = found->next;
memcpy(found, i, sizeof(*found));
found->next = vp;
+ tailfrom = i;
continue;
}
break;
* it causes the server to exit!
*/
VALUE_PAIR *radius_paircreate(REQUEST *request, VALUE_PAIR **vps,
- int attribute, int vendor, int type)
+ unsigned int attribute, unsigned int vendor, int type)
{
VALUE_PAIR *vp;