/* Copyright 2010, 2011 NORDUnet A/S. All rights reserved.
- See the file COPYING for licensing information. */
+ See LICENSE for licensing information. */
#if defined HAVE_CONFIG_H
#include <config.h>
{
char host[80], serv[80];
- getnameinfo (pkt->conn->active_peer->addr->ai_addr,
- pkt->conn->active_peer->addr->ai_addrlen,
+ getnameinfo (pkt->conn->active_peer->addr_cache->ai_addr,
+ pkt->conn->active_peer->addr_cache->ai_addrlen,
host, sizeof(host), serv, sizeof(serv),
0 /* NI_NUMERICHOST|NI_NUMERICSERV*/);
rs_debug (("%s: about to send this to %s:%s:\n", __func__, host, serv));
if (rpkt == NULL)
return rs_err_conn_push (conn, RSE_NOMEM, __func__);
- /*
- * This doesn't make sense; the packet identifier is constant for
- * an entire conversation. A separate API should be provided to
- * allow the application to set the packet ID, or a conversation
- * object should group related packets together.
- */
-#if 0
- rpkt->id = conn->nextid++
-#endif
-
err = nr_packet_init (rpkt, NULL, NULL,
PW_ACCESS_REQUEST,
rpkt + 1, RS_MAX_PACKET_LEN);
return RSE_OK;
}
-struct radius_packet *
-rs_packet_frpkt (struct rs_packet *pkt)
-{
- assert (pkt);
- return pkt->rpkt;
-}
-
void
rs_packet_destroy (struct rs_packet *pkt)
{
}
int
-rs_packet_append_avp (struct rs_packet *pkt,
+rs_packet_append_avp (struct rs_packet *pkt,
unsigned int attr, unsigned int vendor,
const void *data, size_t data_len)
{
da = nr_dict_attr_byvalue (attr, vendor);
if (da == NULL)
- return RSE_ATTR_TYPE_UNKNOWN;
+ return rs_err_conn_push (pkt->conn, RSE_ATTR_TYPE_UNKNOWN, __func__);
err = nr_packet_attr_append (pkt->rpkt, NULL, da, data, data_len);
if (err < 0)