diff options
author | Alexander Motin <mav@FreeBSD.org> | 2009-09-11 11:42:56 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2009-09-11 11:42:56 +0000 |
commit | 3fc0b61c51969c20551372e9c4adb4943e96dbd3 (patch) | |
tree | 62d154acac53838b9afff7d63c697fe60f8f19bc /lib/libradius/radlib.h | |
parent | 493d6f54bc85aee304350c1a063994471d7c2d2c (diff) | |
download | src-3fc0b61c51969c20551372e9c4adb4943e96dbd3.tar.gz src-3fc0b61c51969c20551372e9c4adb4943e96dbd3.zip |
Add simple embedded RADIUS server support to libradius, by extending existing
API, keeping backward compatibility.
First consumer for this functionality is going to become forthcoming MPD-5.4,
supporting CoA and DR of RFC 3576: Dynamic Authorization Extensions to RADIUS.
MFC after: 1 month
Notes
Notes:
svn path=/head/; revision=197086
Diffstat (limited to 'lib/libradius/radlib.h')
-rw-r--r-- | lib/libradius/radlib.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/libradius/radlib.h b/lib/libradius/radlib.h index 2c42c3a9f40e..b26be41d66ef 100644 --- a/lib/libradius/radlib.h +++ b/lib/libradius/radlib.h @@ -42,6 +42,12 @@ #define RAD_ACCOUNTING_REQUEST 4 #define RAD_ACCOUNTING_RESPONSE 5 #define RAD_ACCESS_CHALLENGE 11 +#define RAD_DISCONNECT_REQUEST 40 +#define RAD_DISCONNECT_ACK 41 +#define RAD_DISCONNECT_NAK 42 +#define RAD_COA_REQUEST 43 +#define RAD_COA_ACK 44 +#define RAD_COA_NAK 45 /* Attribute types and values */ #define RAD_USER_NAME 1 /* String */ @@ -179,6 +185,8 @@ #define RAD_ACCT_MULTI_SESSION_ID 50 /* String */ #define RAD_ACCT_LINK_COUNT 51 /* Integer */ +#define RAD_ERROR_CAUSE 101 /* Integer */ + struct rad_handle; struct timeval; @@ -192,6 +200,7 @@ int rad_config(struct rad_handle *, const char *); int rad_continue_send_request(struct rad_handle *, int, int *, struct timeval *); int rad_create_request(struct rad_handle *, int); +int rad_create_response(struct rad_handle *, int); struct in_addr rad_cvt_addr(const void *); u_int32_t rad_cvt_int(const void *); char *rad_cvt_string(const void *, size_t); @@ -209,7 +218,10 @@ int rad_put_string(struct rad_handle *, int, int rad_put_message_authentic(struct rad_handle *); ssize_t rad_request_authenticator(struct rad_handle *, char *, size_t); +int rad_receive_request(struct rad_handle *); int rad_send_request(struct rad_handle *); +int rad_send_response(struct rad_handle *); +struct rad_handle *rad_server_open(int fd); const char *rad_server_secret(struct rad_handle *); const char *rad_strerror(struct rad_handle *); u_char *rad_demangle(struct rad_handle *, const void *, |