From 7ec93ff9e4d979e4bbcf33f9c90c94dc9d3cdba9 Mon Sep 17 00:00:00 2001
From: Luke Howard <lukeh@padl.com>
Date: Sun, 13 Nov 2011 16:16:05 +1100
Subject: add new RADIUS client library

---
 lib/radius/examples/Makefile       |  54 ++++++++++++++++
 lib/radius/examples/example_1.c    |  86 ++++++++++++++++++++++++++
 lib/radius/examples/example_2.c    |  86 ++++++++++++++++++++++++++
 lib/radius/examples/example_3.c    | 123 +++++++++++++++++++++++++++++++++++++
 lib/radius/examples/example_4.c    |  94 ++++++++++++++++++++++++++++
 lib/radius/examples/nr_vp_create.c |  61 ++++++++++++++++++
 6 files changed, 504 insertions(+)
 create mode 100644 lib/radius/examples/Makefile
 create mode 100644 lib/radius/examples/example_1.c
 create mode 100644 lib/radius/examples/example_2.c
 create mode 100644 lib/radius/examples/example_3.c
 create mode 100644 lib/radius/examples/example_4.c
 create mode 100644 lib/radius/examples/nr_vp_create.c

(limited to 'lib/radius/examples')

diff --git a/lib/radius/examples/Makefile b/lib/radius/examples/Makefile
new file mode 100644
index 0000000..f39c343
--- /dev/null
+++ b/lib/radius/examples/Makefile
@@ -0,0 +1,54 @@
+#
+#  GNU Makefile
+#
+.PHONY: all clean install
+
+SRCS = example_1.c example_2.c example_3.c example_4.c
+
+OBJS 	 := ${SRCS:.c=.o}
+PROGRAMS := ${SRCS:.c=}
+
+all: ${PROGRAMS}
+
+HEADERS		:= ../client.h ../radius.h
+
+${OBJS}: ${HEADERS}
+
+$(info ${PROGRAMS} ${OBJS})
+
+${PROGRAMS}: ../libnetworkradius-client.a
+
+
+%.o : %.c
+	$(CC) $(CFLAGS) -I.. -I. -c $<
+
+%.o: ${HEADERS}
+
+LDFLAGS = -L.. -lnetworkradius-client -lcrypto -lssl
+CFLAGS  = -I..
+
+../libnetworkradius-client.a:
+	@${MAKE} -C .. libnetworkradius-client.a
+
+radsample.o: radsample.c ${HEADERS} nr_vp_create.c nr_packet_send.c
+
+#radsample: radsample.o ../libnetworkradius-client.a
+#	${CC} ${LFDLAGS} ${LIBS} -o $@ $^
+
+sample_chap.o: sample_chap.c ${HEADERS}
+
+sample_chap: sample_chap.o ../libnetworkradius-client.a
+	${CC} ${LFDLAGS} ${LIBS} -o $@ $^
+
+radsample2.o: radsample2.c ${HEADERS} nr_vp_create.c
+
+radsample2: radsample2.o ../libnetworkradius-client.a
+	${CC} ${LFDLAGS} ${LIBS} -o $@ $^
+
+radsample3.o: radsample3.c ${HEADERS} nr_transmit.c nr_server_t.c nr_vp_create.c
+
+radsample3: radsample3.o ../libnetworkradius-client.a
+	${CC} ${LFDLAGS} ${LIBS} -o $@ $^
+
+clean:
+	@rm -rf *.o *.a *~
diff --git a/lib/radius/examples/example_1.c b/lib/radius/examples/example_1.c
new file mode 100644
index 0000000..503d927
--- /dev/null
+++ b/lib/radius/examples/example_1.c
@@ -0,0 +1,86 @@
+/*
+Copyright (c) 2011, Network RADIUS SARL
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+    * Neither the name of the <organization> nor the
+      names of its contributors may be used to endorse or promote products
+      derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <networkradius-devel/client.h>
+
+/** \file example_1.c
+ *  \brief Sample code to initialize a RADIUS packet.
+ *
+ *  This example initializes a packet, and then adds User-Name and
+ *  User-Password to it.  The resulting packet is then printed to the
+ *  standard output.
+ */
+
+static const char *secret = "testing123";
+static uint8_t request_buffer[NR_MAX_PACKET_LEN];
+static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static RADIUS_PACKET request, response;
+
+int main(int argc, const char *argv[])
+{
+	ssize_t rcode;
+	const char *user = "bob";
+	const char *password = "password";
+
+	rcode = nr_packet_init(&request, NULL, secret, PW_ACCESS_REQUEST,
+			       request_buffer, sizeof(request_buffer));
+	if (rcode < 0) {
+	error:
+		fprintf(stderr, "Error: %s\n", nr_strerror(rcode));
+		return 1;
+	}
+
+	if (argc > 1) user = argv[1];
+	if (argc > 2) password = argv[2];
+
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_NAME,
+				      user, 0);
+	if (rcode < 0) goto error;
+	
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_PASSWORD,
+				      password, 0);
+	if (rcode < 0) goto error;
+
+	/*
+	 *	ALWAYS call nr_packet_sign() before sending the packet
+	 *	to anyone else!
+	 */
+	rcode = nr_packet_sign(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&request);
+
+	rcode = nr_packet_decode(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_vp_fprintf_list(stdout, request.vps);
+	nr_vp_free(&request.vps);
+
+	return 0;
+}
diff --git a/lib/radius/examples/example_2.c b/lib/radius/examples/example_2.c
new file mode 100644
index 0000000..1065c8e
--- /dev/null
+++ b/lib/radius/examples/example_2.c
@@ -0,0 +1,86 @@
+/*
+Copyright (c) 2011, Network RADIUS SARL
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+    * Neither the name of the <organization> nor the
+      names of its contributors may be used to endorse or promote products
+      derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <networkradius-devel/client.h>
+
+/** \file example_2.c
+ *  \brief Sample code to initialize a RADIUS packet.
+ *
+ *  This example initializes a packet, and then adds User-Name and
+ *  CHAP-Password to it.  The resulting packet is then printed to the
+ *  standard output.
+ */
+
+static const char *secret = "testing123";
+static uint8_t request_buffer[NR_MAX_PACKET_LEN];
+static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static RADIUS_PACKET request, response;
+
+int main(int argc, const char *argv[])
+{
+	int rcode;
+	const char *user = "bob";
+	const char *password = "password";
+
+	rcode = nr_packet_init(&request, NULL, secret, PW_ACCESS_REQUEST,
+			       request_buffer, sizeof(request_buffer));
+	if (rcode < 0) {
+	error:
+		fprintf(stderr, "Error: %s\n", nr_strerror(rcode));
+		return 1;
+	}
+
+	if (argc > 1) user = argv[1];
+	if (argc > 2) password = argv[2];
+
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_NAME,
+				      user, 0);
+	if (rcode < 0) goto error;
+	
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_CHAP_PASSWORD,
+				      password, strlen(password));
+	if (rcode < 0) goto error;
+
+	/*
+	 *	ALWAYS call nr_packet_sign() before sending the packet
+	 *	to anyone else!
+	 */
+	rcode = nr_packet_sign(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&request);
+
+	rcode = nr_packet_decode(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_vp_fprintf_list(stdout, request.vps);
+	nr_vp_free(&request.vps);
+
+	return 0;
+}
diff --git a/lib/radius/examples/example_3.c b/lib/radius/examples/example_3.c
new file mode 100644
index 0000000..6104f6f
--- /dev/null
+++ b/lib/radius/examples/example_3.c
@@ -0,0 +1,123 @@
+/*
+Copyright (c) 2011, Network RADIUS SARL
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+    * Neither the name of the <organization> nor the
+      names of its contributors may be used to endorse or promote products
+      derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <networkradius-devel/client.h>
+
+/** \file example_3.c
+ *  \brief Sample code to initialize a RADIUS packet and a response to it.
+ *
+ *  This example initializes a packet, and then adds User-Name and
+ *  User-Password to it.  The resulting packet is then printed to the
+ *  standard output.
+ *
+ *  As a next step, it then creates the response, and prints that,
+ *  too.
+ */
+
+static const char *secret = "testing123";
+static uint8_t request_buffer[NR_MAX_PACKET_LEN];
+static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static RADIUS_PACKET request, response;
+
+int main(int argc, const char *argv[])
+{
+	int rcode;
+	const char *user = "bob";
+	const char *password = "password";
+
+	rcode = nr_packet_init(&request, NULL, secret, PW_ACCESS_REQUEST,
+			       request_buffer, sizeof(request_buffer));
+	if (rcode < 0) {
+	error:
+		fprintf(stderr, "Error :%s\n",  nr_strerror(rcode));
+		return 1;
+	}
+
+	if (argc > 1) user = argv[1];
+	if (argc > 2) password = argv[2];
+
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_NAME,
+				      user, 0);
+	if (rcode < 0) goto error;
+	
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_PASSWORD,
+				      password, 0);
+	if (rcode < 0) goto error;
+
+	/*
+	 *	ALWAYS call nr_packet_sign() before sending the packet
+	 *	to anyone else!
+	 */
+	rcode = nr_packet_sign(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&request);
+
+	rcode = nr_packet_init(&response, &request, secret, PW_ACCESS_ACCEPT,
+			       response_buffer, sizeof(response_buffer));
+	if (rcode < 0) goto error;
+
+	rcode = nr_packet_attr_append(&response, &request,
+				      NR_DA_REPLY_MESSAGE,
+				      "Success!", 0);
+	if (rcode < 0) goto error;
+
+	rcode = nr_packet_attr_append(&response, &request,
+				      NR_DA_TUNNEL_PASSWORD,
+				      password, 0);
+	if (rcode < 0) goto error;
+	rcode = nr_packet_sign(&response, &request);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&response);
+
+	/*
+	 *	Check that the response is well-formed.  The
+	 *	nr_packet_verify() function also calls nr_packet_ok().
+	 *	However, it is sometimes useful to separate "malformed
+	 *	packet" errors from "packet is not a response to a
+	 *	reqeust" errors.
+	 */
+	rcode = nr_packet_ok(&response);
+	if (rcode < 0) goto error;
+
+	/*
+	 *	Double-check the signature of the response.
+	 */
+	rcode = nr_packet_verify(&response, &request);
+	if (rcode < 0) goto error;
+
+	rcode = nr_packet_decode(&response, &request);
+	if (rcode < 0) goto error;
+
+	nr_vp_fprintf_list(stdout, response.vps);
+	nr_vp_free(&response.vps);
+
+	return 0;
+}
diff --git a/lib/radius/examples/example_4.c b/lib/radius/examples/example_4.c
new file mode 100644
index 0000000..f93764c
--- /dev/null
+++ b/lib/radius/examples/example_4.c
@@ -0,0 +1,94 @@
+/*
+Copyright (c) 2011, Network RADIUS SARL
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+    * Neither the name of the <organization> nor the
+      names of its contributors may be used to endorse or promote products
+      derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <networkradius-devel/client.h>
+
+/** \file example_4.c
+ *  \brief Allocate and manage multiple packets.
+ */
+
+static const char *secret = "testing123";
+static nr_server_t server;
+
+int main(int argc, const char *argv[])
+{
+	int rcode;
+	const char *user = "bob";
+	const char *password = "password";
+
+	rcode = nr_packet_init(&request, NULL, secret, PW_ACCESS_REQUEST,
+			       request_buffer, sizeof(request_buffer));
+	if (rcode < 0) {
+	error:
+		fprintf(stderr, "Error :%s\n",  nr_strerror(rcode));
+		return 1;
+	}
+
+	if (argc > 1) user = argv[1];
+	if (argc > 2) password = argv[2];
+
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_NAME,
+				      user, 0);
+	if (rcode < 0) goto error;
+	
+	rcode = nr_packet_attr_append(&request, NULL,
+				      NR_DA_USER_PASSWORD,
+				      password, 0);
+	if (rcode < 0) goto error;
+
+	/*
+	 *	ALWAYS call nr_packet_sign() before sending the packet
+	 *	to anyone else!
+	 */
+	rcode = nr_packet_sign(&request, NULL);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&request);
+
+	rcode = nr_packet_init(&response, &request, secret, PW_ACCESS_ACCEPT,
+			       response_buffer, sizeof(response_buffer));
+	if (rcode < 0) goto error;
+
+	rcode = nr_packet_attr_append(&response, &request,
+				      NR_DA_REPLY_MESSAGE,
+				      "Success!", 0);
+	if (rcode < 0) goto error;
+
+	rcode = nr_packet_sign(&response, &request);
+	if (rcode < 0) goto error;
+
+	nr_packet_print_hex(&response);
+
+	/*
+	 *	Double-check the signature of the response.
+	 */
+	rcode = nr_packet_verify(&response, &request);
+	if (rcode < 0) goto error;
+
+	return 0;
+}
diff --git a/lib/radius/examples/nr_vp_create.c b/lib/radius/examples/nr_vp_create.c
new file mode 100644
index 0000000..bd04f17
--- /dev/null
+++ b/lib/radius/examples/nr_vp_create.c
@@ -0,0 +1,61 @@
+/*
+ * The person or persons who have associated work with this document
+ * (the "Dedicator" or "Certifier") hereby either (a) certifies that,
+ * to the best of his knowledge, the work of authorship identified is
+ * in the public domain of the country from which the work is
+ * published, or (b) hereby dedicates whatever copyright the
+ * dedicators holds in the work of authorship identified below (the
+ * "Work") to the public domain. A certifier, moreover, dedicates any
+ * copyright interest he may have in the associated work, and for
+ * these purposes, is described as a "dedicator" below.
+ *
+ * A certifier has taken reasonable steps to verify the copyright
+ * status of this work. Certifier recognizes that his good faith
+ * efforts may not shield him from liability if in fact the work
+ * certified is not in the public domain.
+ *
+ * Dedicator makes this dedication for the benefit of the public at
+ * large and to the detriment of the Dedicator's heirs and
+ * successors. Dedicator intends this dedication to be an overt act of
+ * relinquishment in perpetuity of all present and future rights under
+ * copyright law, whether vested or contingent, in the Work. Dedicator
+ * understands that such relinquishment of all rights includes the
+ * relinquishment of all rights to enforce (by lawsuit or otherwise)
+ * those copyrights in the Work.
+ *
+ * Dedicator recognizes that, once placed in the public domain, the
+ * Work may be freely reproduced, distributed, transmitted, used,
+ * modified, built upon, or otherwise exploited by anyone for any
+ * purpose, commercial or non-commercial, and in any way, including by
+ * methods that have not yet been invented or conceived.
+ */
+
+static VALUE_PAIR *example_nr_vp_create(void)
+{
+	VALUE_PAIR *vp;
+	VALUE_PAIR *head = NULL;
+
+	/*
+	 *	Create the request contents.
+	 */
+	vp = nr_vp_create(PW_USER_NAME, 0, "bob", 4);
+	if (!vp) {
+		fprintf(stderr, "User-Name: %s\n", nr_strerror(0));
+		exit(1);
+	}
+	nr_vps_append(&head, vp);
+
+	/*
+	 *	The User-Password attribute is automatically encrypted
+	 *	when being placed in the packet.  This version stays
+	 *	untouched, and should be "plain text".
+	 */
+	vp = nr_vp_create(PW_USER_PASSWORD, 0, "hello", 6);
+	if (!vp) {
+		fprintf(stderr, "User-Password: %s\n", nr_strerror(0));
+		exit(1);
+	}
+	nr_vps_append(&head, vp);
+
+	return head;
+}
-- 
cgit v1.1


From a13cddc1331aa1f5e7dca7d1b44482951d2757bf Mon Sep 17 00:00:00 2001
From: Luke Howard <lukeh@padl.com>
Date: Sun, 13 Nov 2011 17:16:14 +1100
Subject: port to new RADIUS client library

---
 lib/radius/examples/example_1.c |  8 ++++----
 lib/radius/examples/example_2.c |  8 ++++----
 lib/radius/examples/example_3.c | 12 ++++++------
 lib/radius/examples/example_4.c |  6 +++---
 4 files changed, 17 insertions(+), 17 deletions(-)

(limited to 'lib/radius/examples')

diff --git a/lib/radius/examples/example_1.c b/lib/radius/examples/example_1.c
index 503d927..265c880 100644
--- a/lib/radius/examples/example_1.c
+++ b/lib/radius/examples/example_1.c
@@ -36,8 +36,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 static const char *secret = "testing123";
-static uint8_t request_buffer[NR_MAX_PACKET_LEN];
-static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static uint8_t request_buffer[RS_MAX_PACKET_LEN];
+static uint8_t response_buffer[RS_MAX_PACKET_LEN];
 static RADIUS_PACKET request, response;
 
 int main(int argc, const char *argv[])
@@ -58,12 +58,12 @@ int main(int argc, const char *argv[])
 	if (argc > 2) password = argv[2];
 
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_NAME,
+				      RS_DA_USER_NAME,
 				      user, 0);
 	if (rcode < 0) goto error;
 	
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_PASSWORD,
+				      RS_DA_USER_PASSWORD,
 				      password, 0);
 	if (rcode < 0) goto error;
 
diff --git a/lib/radius/examples/example_2.c b/lib/radius/examples/example_2.c
index 1065c8e..0a58523 100644
--- a/lib/radius/examples/example_2.c
+++ b/lib/radius/examples/example_2.c
@@ -36,8 +36,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 static const char *secret = "testing123";
-static uint8_t request_buffer[NR_MAX_PACKET_LEN];
-static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static uint8_t request_buffer[RS_MAX_PACKET_LEN];
+static uint8_t response_buffer[RS_MAX_PACKET_LEN];
 static RADIUS_PACKET request, response;
 
 int main(int argc, const char *argv[])
@@ -58,12 +58,12 @@ int main(int argc, const char *argv[])
 	if (argc > 2) password = argv[2];
 
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_NAME,
+				      RS_DA_USER_NAME,
 				      user, 0);
 	if (rcode < 0) goto error;
 	
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_CHAP_PASSWORD,
+				      RS_DA_CHAP_PASSWORD,
 				      password, strlen(password));
 	if (rcode < 0) goto error;
 
diff --git a/lib/radius/examples/example_3.c b/lib/radius/examples/example_3.c
index 6104f6f..33fc671 100644
--- a/lib/radius/examples/example_3.c
+++ b/lib/radius/examples/example_3.c
@@ -39,8 +39,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 static const char *secret = "testing123";
-static uint8_t request_buffer[NR_MAX_PACKET_LEN];
-static uint8_t response_buffer[NR_MAX_PACKET_LEN];
+static uint8_t request_buffer[RS_MAX_PACKET_LEN];
+static uint8_t response_buffer[RS_MAX_PACKET_LEN];
 static RADIUS_PACKET request, response;
 
 int main(int argc, const char *argv[])
@@ -61,12 +61,12 @@ int main(int argc, const char *argv[])
 	if (argc > 2) password = argv[2];
 
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_NAME,
+				      RS_DA_USER_NAME,
 				      user, 0);
 	if (rcode < 0) goto error;
 	
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_PASSWORD,
+				      RS_DA_USER_PASSWORD,
 				      password, 0);
 	if (rcode < 0) goto error;
 
@@ -84,12 +84,12 @@ int main(int argc, const char *argv[])
 	if (rcode < 0) goto error;
 
 	rcode = nr_packet_attr_append(&response, &request,
-				      NR_DA_REPLY_MESSAGE,
+				      RS_DA_REPLY_MESSAGE,
 				      "Success!", 0);
 	if (rcode < 0) goto error;
 
 	rcode = nr_packet_attr_append(&response, &request,
-				      NR_DA_TUNNEL_PASSWORD,
+				      RS_DA_TUNNEL_PASSWORD,
 				      password, 0);
 	if (rcode < 0) goto error;
 	rcode = nr_packet_sign(&response, &request);
diff --git a/lib/radius/examples/example_4.c b/lib/radius/examples/example_4.c
index f93764c..2dadc89 100644
--- a/lib/radius/examples/example_4.c
+++ b/lib/radius/examples/example_4.c
@@ -52,12 +52,12 @@ int main(int argc, const char *argv[])
 	if (argc > 2) password = argv[2];
 
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_NAME,
+				      RS_DA_USER_NAME,
 				      user, 0);
 	if (rcode < 0) goto error;
 	
 	rcode = nr_packet_attr_append(&request, NULL,
-				      NR_DA_USER_PASSWORD,
+				      RS_DA_USER_PASSWORD,
 				      password, 0);
 	if (rcode < 0) goto error;
 
@@ -75,7 +75,7 @@ int main(int argc, const char *argv[])
 	if (rcode < 0) goto error;
 
 	rcode = nr_packet_attr_append(&response, &request,
-				      NR_DA_REPLY_MESSAGE,
+				      RS_DA_REPLY_MESSAGE,
 				      "Success!", 0);
 	if (rcode < 0) goto error;
 
-- 
cgit v1.1