Have rad_decode() verify responses.
[radsecproxy.git] / lib / examples / client-blocking.c
index 8cd9968..365b3b0 100644 (file)
@@ -18,7 +18,7 @@
 struct rs_error *
 blocking_client (const char *av1, const char *av2)
 {
-  struct rs_handle *h;
+  struct rs_context *h;
   struct rs_connection *conn;
   struct rs_packet *req, *resp;
   RADIUS_PACKET *fr_pkt;
@@ -55,17 +55,23 @@ blocking_client (const char *av1, const char *av2)
 
 #if !defined(USE_REQUEST_OBJECT)
   if (rs_packet_send (req, NULL))
-    return rs_err_conn_pop (conn);
-  req = NULL;
-  if (rs_conn_receive_packet (conn, &resp))
-    return rs_err_conn_pop (conn);
+    {
+      rs_packet_destroy (req);
+      return rs_err_conn_pop (conn);
+    }
+  if (rs_conn_receive_packet (conn, req, &resp))
+    {
+      rs_packet_destroy (req);
+      return rs_err_conn_pop (conn);
+    }
+  rs_packet_destroy (req);
 #else
   {
     struct rs_request *request;
 
-    if (rs_request_new (conn, &request))
+    if (rs_request_create (conn, &request))
       return rs_err_conn_pop (conn);
-    if (rs_req_send (request, req, &resp))
+    if (rs_request_send (request, req, &resp))
       return rs_err_conn_pop (conn);
     rs_request_destroy (request);
   }