Module Name: src
Committed By: kefren
Date: Thu Jul 11 05:45:23 UTC 2013
Modified Files:
src/usr.sbin/ldpd: fsm.c fsm.h label.c label.h ldp_peer.c ldp_peer.h
mpls_interface.c mpls_interface.h notifications.c notifications.h
pdu.c pdu.h socketops.c socketops.h tlv_stack.c tlv_stack.h
Log Message:
Constify a little bit
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/usr.sbin/ldpd/fsm.c
cvs rdiff -u -r1.3 -r1.4 src/usr.sbin/ldpd/fsm.h
cvs rdiff -u -r1.4 -r1.5 src/usr.sbin/ldpd/label.c \
src/usr.sbin/ldpd/ldp_peer.h src/usr.sbin/ldpd/pdu.c
cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/ldpd/label.h \
src/usr.sbin/ldpd/mpls_interface.h src/usr.sbin/ldpd/notifications.c \
src/usr.sbin/ldpd/notifications.h src/usr.sbin/ldpd/pdu.h \
src/usr.sbin/ldpd/tlv_stack.h
cvs rdiff -u -r1.11 -r1.12 src/usr.sbin/ldpd/ldp_peer.c
cvs rdiff -u -r1.8 -r1.9 src/usr.sbin/ldpd/mpls_interface.c
cvs rdiff -u -r1.27 -r1.28 src/usr.sbin/ldpd/socketops.c
cvs rdiff -u -r1.5 -r1.6 src/usr.sbin/ldpd/socketops.h
cvs rdiff -u -r1.6 -r1.7 src/usr.sbin/ldpd/tlv_stack.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.sbin/ldpd/fsm.c
diff -u src/usr.sbin/ldpd/fsm.c:1.10 src/usr.sbin/ldpd/fsm.c:1.11
--- src/usr.sbin/ldpd/fsm.c:1.10 Tue Feb 5 13:02:33 2013
+++ src/usr.sbin/ldpd/fsm.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: fsm.c,v 1.10 2013/02/05 13:02:33 kefren Exp $ */
+/* $NetBSD: fsm.c,v 1.11 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -49,13 +49,14 @@
char my_ldp_id[20];
struct sockaddr mplssockaddr;
-/* Processing a hello */
+/* Process a hello */
void
-run_ldp_hello(struct ldp_pdu * pduid, struct hello_tlv * ht,
- struct sockaddr * padd, struct in_addr * ladd, int mysock, bool may_connect)
+run_ldp_hello(const struct ldp_pdu * pduid, const struct hello_tlv * ht,
+ const struct sockaddr * padd, const struct in_addr * ladd, int mysock,
+ bool may_connect)
{
struct ldp_peer *peer = NULL;
- struct transport_address_tlv *trtlv;
+ const struct transport_address_tlv *trtlv;
struct hello_info *hi = NULL;
union sockunion traddr;
@@ -68,19 +69,15 @@ run_ldp_hello(struct ldp_pdu * pduid, st
if (ht->length <= 4) /* Common hello parameters */
return;
- ht->ch.type = ntohs(ht->ch.type);
- ht->ch.length = ntohs(ht->ch.length);
- ht->ch.holdtime = ntohs(ht->ch.holdtime);
- ht->ch.res = ntohs(ht->ch.res);
- debugp("Common hello Type: 0x%.4X Length: %.2d R:%d T:%d"
- " Hold time: %d\n", ht->ch.type, ht->ch.length,
- ht->ch.tr / 2, ht->ch.tr % 2, ht->ch.holdtime);
+ debugp("Common hello Type: 0x%.4X Length: %.2d"
+ " Hold time: %d\n", ntohs(ht->ch.type), ntohs(ht->ch.length),
+ ht->ch.holdtime);
memset(&traddr, 0, sizeof(traddr));
/* Check transport TLV */
if (pduid->length - PDU_PAYLOAD_LENGTH -
sizeof(struct hello_tlv) >= 8) {
- trtlv = (struct transport_address_tlv *)(ht + 1);
+ trtlv = (const struct transport_address_tlv *)(ht + 1);
if (trtlv->type == htons(TLV_IPV4_TRANSPORT)) {
traddr.sin.sin_family = AF_INET;
traddr.sin.sin_len = sizeof(struct sockaddr_in);
@@ -119,9 +116,9 @@ run_ldp_hello(struct ldp_pdu * pduid, st
/* Update expire timer */
if (ht->ch.holdtime != 0)
- hi->keepalive = ht->ch.holdtime;
+ hi->keepalive = ntohs(ht->ch.holdtime);
else {
- if (ht->ch.res >> 15 == 0)
+ if (ntohs(ht->ch.res) >> 15 == 0)
hi->keepalive = LDP_HELLO_KEEP;
else
hi->keepalive = LDP_THELLO_KEEP;
@@ -138,7 +135,7 @@ run_ldp_hello(struct ldp_pdu * pduid, st
ntohl(ladd->s_addr))) {
peer = ldp_peer_new(&pduid->ldp_id, padd,
&hi->transport_address.sa,
- ht->ch.holdtime, 0);
+ ntohs(ht->ch.holdtime), 0);
if (peer == NULL)
return;
if (peer->state == LDP_PEER_CONNECTED)
Index: src/usr.sbin/ldpd/fsm.h
diff -u src/usr.sbin/ldpd/fsm.h:1.3 src/usr.sbin/ldpd/fsm.h:1.4
--- src/usr.sbin/ldpd/fsm.h:1.3 Sun Feb 3 19:41:59 2013
+++ src/usr.sbin/ldpd/fsm.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: fsm.h,v 1.3 2013/02/03 19:41:59 kefren Exp $ */
+/* $NetBSD: fsm.h,v 1.4 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -35,8 +35,8 @@
#include "tlv.h"
#include "pdu.h"
-void run_ldp_hello(struct ldp_pdu *, struct hello_tlv *,
- struct sockaddr *, struct in_addr *, int, bool);
+void run_ldp_hello(const struct ldp_pdu *, const struct hello_tlv *,
+ const struct sockaddr *, const struct in_addr *, int, bool);
struct address_list_tlv * build_address_list_tlv(void);
int set_my_ldp_id(void);
Index: src/usr.sbin/ldpd/label.c
diff -u src/usr.sbin/ldpd/label.c:1.4 src/usr.sbin/ldpd/label.c:1.5
--- src/usr.sbin/ldpd/label.c:1.4 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/label.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: label.c,v 1.4 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: label.c,v 1.5 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -175,7 +175,7 @@ label_get(union sockunion *sodest, union
* and reattach them to IPv4
*/
void
-label_reattach_all_peer_labels(struct ldp_peer *p, int readd)
+label_reattach_all_peer_labels(const struct ldp_peer *p, int readd)
{
struct label *l;
Index: src/usr.sbin/ldpd/ldp_peer.h
diff -u src/usr.sbin/ldpd/ldp_peer.h:1.4 src/usr.sbin/ldpd/ldp_peer.h:1.5
--- src/usr.sbin/ldpd/ldp_peer.h:1.4 Mon Feb 4 17:14:31 2013
+++ src/usr.sbin/ldpd/ldp_peer.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: ldp_peer.h,v 1.4 2013/02/04 17:14:31 kefren Exp $ */
+/* $NetBSD: ldp_peer.h,v 1.5 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -88,32 +88,33 @@ struct peer_map {
int sockaddr_cmp(const struct sockaddr *, const struct sockaddr *);
void ldp_peer_init(void);
-struct ldp_peer * ldp_peer_new(const struct in_addr *, struct sockaddr *,
- struct sockaddr *, uint16_t, int);
+struct ldp_peer * ldp_peer_new(const struct in_addr *, const struct sockaddr *,
+ const struct sockaddr *, uint16_t, int);
void ldp_peer_holddown(struct ldp_peer *);
void ldp_peer_delete(struct ldp_peer *);
struct ldp_peer * get_ldp_peer(const struct sockaddr *);
struct ldp_peer * get_ldp_peer_by_id(const struct in_addr *);
struct ldp_peer * get_ldp_peer_by_socket(int);
-int add_ifaddresses(struct ldp_peer *, struct al_tlv *);
-int add_ifaddr(struct ldp_peer *, struct sockaddr *);
-int del_ifaddr(struct ldp_peer *, struct sockaddr *);
-struct ldp_peer_address * check_ifaddr(struct ldp_peer *,
+int add_ifaddresses(struct ldp_peer *, const struct al_tlv *);
+int add_ifaddr(struct ldp_peer *, const struct sockaddr *);
+int del_ifaddr(struct ldp_peer *, const struct sockaddr *);
+struct ldp_peer_address * check_ifaddr(const struct ldp_peer *,
const struct sockaddr *);
-void print_bounded_addresses(struct ldp_peer *);
+void print_bounded_addresses(const struct ldp_peer *);
void del_all_ifaddr(struct ldp_peer *);
-int del_ifaddresses(struct ldp_peer *, struct al_tlv *);
+int del_ifaddresses(struct ldp_peer *, const struct al_tlv *);
void add_my_if_addrs(struct in_addr *, int);
-int ldp_peer_add_mapping(struct ldp_peer *, struct sockaddr *, int, int);
-int ldp_peer_delete_mapping(struct ldp_peer *, struct sockaddr *, int);
-struct label_mapping * ldp_peer_get_lm(struct ldp_peer *, struct sockaddr *,
- uint);
+int ldp_peer_add_mapping(struct ldp_peer *, const struct sockaddr *, int, int);
+int ldp_peer_delete_mapping(struct ldp_peer *, const struct sockaddr *, int);
+struct label_mapping * ldp_peer_get_lm(const struct ldp_peer *,
+ const struct sockaddr *, uint);
int ldp_peer_delete_all_mappings(struct ldp_peer *);
void ldp_peer_holddown_all(void);
-struct peer_map * ldp_test_mapping(struct sockaddr *, int, struct sockaddr *);
+struct peer_map * ldp_test_mapping(const struct sockaddr *, int,
+ const struct sockaddr *);
-const char * ldp_state_to_name(int);
+const char * ldp_state_to_name(int);
#endif /* !_LDP_PEER_H_ */
Index: src/usr.sbin/ldpd/pdu.c
diff -u src/usr.sbin/ldpd/pdu.c:1.4 src/usr.sbin/ldpd/pdu.c:1.5
--- src/usr.sbin/ldpd/pdu.c:1.4 Mon Feb 4 17:14:31 2013
+++ src/usr.sbin/ldpd/pdu.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: pdu.c,v 1.4 2013/02/04 17:14:31 kefren Exp $ */
+/* $NetBSD: pdu.c,v 1.5 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -43,10 +43,9 @@
#include "pdu.h"
uint
-get_pdu(unsigned char *s, struct ldp_pdu * p)
+get_pdu(const unsigned char *s, struct ldp_pdu * p)
{
- struct ldp_pdu *p1;
- p1 = (struct ldp_pdu *) s;
+ const struct ldp_pdu *p1 = (const struct ldp_pdu *) s;
p->version = ntohs(p1->version);
p->length = ntohs(p1->length);
@@ -58,7 +57,7 @@ get_pdu(unsigned char *s, struct ldp_pdu
/* Checks an incoming PDU for size and version */
int
-check_recv_pdu(struct ldp_peer * p, struct ldp_pdu * rpdu, int c)
+check_recv_pdu(const struct ldp_peer * p, const struct ldp_pdu * rpdu, int c)
{
struct notification_tlv *notiftlv;
Index: src/usr.sbin/ldpd/label.h
diff -u src/usr.sbin/ldpd/label.h:1.2 src/usr.sbin/ldpd/label.h:1.3
--- src/usr.sbin/ldpd/label.h:1.2 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/label.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: label.h,v 1.2 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: label.h,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -51,7 +51,7 @@
struct label {
union sockunion so_dest, so_pref, so_gate;
int binding, label;
- struct ldp_peer *p;
+ const struct ldp_peer *p;
SLIST_ENTRY(label) labels;
};
SLIST_HEAD(,label) label_head;
@@ -61,7 +61,7 @@ struct label * label_add(union sockunion
union sockunion *, uint32_t, struct ldp_peer *, uint32_t);
void label_del(struct label *);
void del_all_peer_labels(struct ldp_peer*, int);
-void label_reattach_all_peer_labels(struct ldp_peer*, int);
+void label_reattach_all_peer_labels(const struct ldp_peer*, int);
void label_del_by_binding(uint32_t, int);
struct label * label_get(union sockunion *sodest, union sockunion *sopref);
struct label * label_get_by_prefix(const struct sockaddr *, int);
Index: src/usr.sbin/ldpd/mpls_interface.h
diff -u src/usr.sbin/ldpd/mpls_interface.h:1.2 src/usr.sbin/ldpd/mpls_interface.h:1.3
--- src/usr.sbin/ldpd/mpls_interface.h:1.2 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/mpls_interface.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: mpls_interface.h,v 1.2 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: mpls_interface.h,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -34,10 +34,10 @@
#include "mpls_routes.h"
-int mpls_add_label(struct ldp_peer *, struct rt_msg *,
+int mpls_add_label(const struct ldp_peer *, struct rt_msg *,
struct sockaddr *, int, int, int);
-int mpls_add_ldp_peer(struct ldp_peer *);
-int mpls_delete_ldp_peer(struct ldp_peer *);
+int mpls_add_ldp_peer(const struct ldp_peer *);
+int mpls_delete_ldp_peer(const struct ldp_peer *);
int mpls_start_ldp(void);
#endif /* _MPLS_INTERFACE_H_ */
Index: src/usr.sbin/ldpd/notifications.c
diff -u src/usr.sbin/ldpd/notifications.c:1.2 src/usr.sbin/ldpd/notifications.c:1.3
--- src/usr.sbin/ldpd/notifications.c:1.2 Thu Dec 9 00:10:59 2010
+++ src/usr.sbin/ldpd/notifications.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: notifications.c,v 1.2 2010/12/09 00:10:59 christos Exp $ */
+/* $NetBSD: notifications.c,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -63,7 +63,7 @@ build_notification(uint32_t msg, uint32_
}
int
-send_notification(struct ldp_peer * p, uint32_t msg, uint32_t code)
+send_notification(const struct ldp_peer * p, uint32_t msg, uint32_t code)
{
struct notification_tlv *nt;
int rv;
Index: src/usr.sbin/ldpd/notifications.h
diff -u src/usr.sbin/ldpd/notifications.h:1.2 src/usr.sbin/ldpd/notifications.h:1.3
--- src/usr.sbin/ldpd/notifications.h:1.2 Mon Nov 12 18:39:00 2012
+++ src/usr.sbin/ldpd/notifications.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: notifications.h,v 1.2 2012/11/12 18:39:00 kefren Exp $ */
+/* $NetBSD: notifications.h,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -92,7 +92,7 @@ static const char *NOTIF_STR[] __unused
"Internal error"
};
-struct notification_tlv * build_notification(uint32_t, uint32_t);
-int send_notification(struct ldp_peer *, uint32_t, uint32_t);
+struct notification_tlv* build_notification(uint32_t, uint32_t);
+int send_notification(const struct ldp_peer *, uint32_t, uint32_t);
#endif /* !_NOTIFICATIONS_H_ */
Index: src/usr.sbin/ldpd/pdu.h
diff -u src/usr.sbin/ldpd/pdu.h:1.2 src/usr.sbin/ldpd/pdu.h:1.3
--- src/usr.sbin/ldpd/pdu.h:1.2 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/pdu.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: pdu.h,v 1.2 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: pdu.h,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -52,8 +52,8 @@ struct ldp_pdu {
} __packed;
-uint get_pdu(unsigned char *, struct ldp_pdu *);
-int check_recv_pdu(struct ldp_peer *, struct ldp_pdu *, int);
+uint get_pdu(const unsigned char *, struct ldp_pdu *);
+int check_recv_pdu(const struct ldp_peer *, const struct ldp_pdu *, int);
#endif /* !_PDU_H_ */
Index: src/usr.sbin/ldpd/tlv_stack.h
diff -u src/usr.sbin/ldpd/tlv_stack.h:1.2 src/usr.sbin/ldpd/tlv_stack.h:1.3
--- src/usr.sbin/ldpd/tlv_stack.h:1.2 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/tlv_stack.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: tlv_stack.h,v 1.2 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: tlv_stack.h,v 1.3 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -39,16 +39,17 @@
#define FEC_PREFIX 0x02
#define FEC_HOST 0x03
-int map_label(struct ldp_peer *, struct fec_tlv *, struct label_tlv *);
+int map_label(struct ldp_peer *, struct fec_tlv *,
+ struct label_tlv *);
int withdraw_label(struct ldp_peer *, struct fec_tlv *);
void prepare_release(struct tlv *);
-void send_label_tlv(struct ldp_peer *, struct sockaddr *, uint8_t,
+void send_label_tlv(const struct ldp_peer *, struct sockaddr *, uint8_t,
uint32_t, struct label_request_tlv *);
void send_label_tlv_to_all(struct sockaddr *, uint8_t, uint32_t);
void send_all_bindings(struct ldp_peer *);
-void send_withdraw_tlv(struct ldp_peer *, struct sockaddr *, uint8_t);
+void send_withdraw_tlv(const struct ldp_peer *, struct sockaddr *, uint8_t);
void send_withdraw_tlv_to_all(struct sockaddr *, uint8_t);
-int request_respond(struct ldp_peer *, struct label_map_tlv *,
+int request_respond(const struct ldp_peer *, struct label_map_tlv *,
struct fec_tlv *);
#endif /* !_TLV_STACK_H_ */
Index: src/usr.sbin/ldpd/ldp_peer.c
diff -u src/usr.sbin/ldpd/ldp_peer.c:1.11 src/usr.sbin/ldpd/ldp_peer.c:1.12
--- src/usr.sbin/ldpd/ldp_peer.c:1.11 Mon Feb 4 20:28:24 2013
+++ src/usr.sbin/ldpd/ldp_peer.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: ldp_peer.c,v 1.11 2013/02/04 20:28:24 kefren Exp $ */
+/* $NetBSD: ldp_peer.c,v 1.12 2013/07/11 05:45:23 kefren Exp $ */
/*
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -76,8 +76,8 @@ sockaddr_cmp(const struct sockaddr *a, c
* initiate a new one
*/
struct ldp_peer *
-ldp_peer_new(const struct in_addr * ldp_id, struct sockaddr * padd,
- struct sockaddr * tradd, uint16_t holdtime, int soc)
+ldp_peer_new(const struct in_addr * ldp_id, const struct sockaddr * padd,
+ const struct sockaddr * tradd, uint16_t holdtime, int soc)
{
struct ldp_peer *p;
int s = soc;
@@ -93,10 +93,13 @@ ldp_peer_new(const struct in_addr * ldp_
fatalp("ldp_peer_new: cannot create socket\n");
return NULL;
}
- if (tradd != NULL)
- connecting_sa = tradd;
- else
- connecting_sa = padd;
+ if (tradd != NULL) {
+ connecting_sa = malloc(tradd->sa_len);
+ memcpy(connecting_sa, tradd, tradd->sa_len);
+ } else {
+ connecting_sa = malloc(padd->sa_len);
+ memcpy(connecting_sa, padd, padd->sa_len);
+ }
assert(connecting_sa->sa_family == AF_INET ||
connecting_sa->sa_family == AF_INET6);
@@ -159,11 +162,13 @@ ldp_peer_new(const struct in_addr * ldp_
if (soc < 1)
if (connect(s, connecting_sa, connecting_sa->sa_len) == -1) {
if (errno == EINTR) {
+ free(connecting_sa);
return p; /* We take care of this in
* big_loop */
}
warnp("connect to %s failed: %s\n",
satos(connecting_sa), strerror(errno));
+ free(connecting_sa);
ldp_peer_holddown(p);
return NULL;
}
@@ -263,10 +268,10 @@ get_ldp_peer_by_socket(int s)
* Returns the number of addresses inserted successfuly
*/
int
-add_ifaddresses(struct ldp_peer * p, struct al_tlv * a)
+add_ifaddresses(struct ldp_peer * p, const struct al_tlv * a)
{
int i, c, n;
- struct in_addr *ia;
+ const struct in_addr *ia;
struct sockaddr_in ipa;
memset(&ipa, 0, sizeof(ipa));
@@ -288,7 +293,7 @@ add_ifaddresses(struct ldp_peer * p, str
debugp("Trying to add %d addresses to peer %s ... \n", n,
inet_ntoa(p->ldp_id));
- for (ia = (struct in_addr *) & a->address, c = 0, i = 0; i < n; i++) {
+ for (ia = (const struct in_addr *) & a->address,c = 0,i = 0; i<n; i++) {
memcpy(&ipa.sin_addr, &ia[i], sizeof(ipa.sin_addr));
if (add_ifaddr(p, (struct sockaddr *)&ipa) == LDP_E_OK)
c++;
@@ -300,10 +305,10 @@ add_ifaddresses(struct ldp_peer * p, str
}
int
-del_ifaddresses(struct ldp_peer * p, struct al_tlv * a)
+del_ifaddresses(struct ldp_peer * p, const struct al_tlv * a)
{
int i, c, n;
- struct in_addr *ia;
+ const struct in_addr *ia;
struct sockaddr_in ipa;
memset(&ipa, 0, sizeof(ipa));
@@ -324,7 +329,7 @@ del_ifaddresses(struct ldp_peer * p, str
debugp("Trying to delete %d addresses from peer %s ... \n", n,
inet_ntoa(p->ldp_id));
- for (ia = (struct in_addr *) & a[1], c = 0, i = 0; i < n; i++) {
+ for (ia = (const struct in_addr *) & a[1], c = 0, i = 0; i < n; i++) {
memcpy(&ipa.sin_addr, &ia[i], sizeof(ipa.sin_addr));
if (del_ifaddr(p, (struct sockaddr *)&ipa) == LDP_E_OK)
c++;
@@ -338,7 +343,7 @@ del_ifaddresses(struct ldp_peer * p, str
/* Adds a _SINGLE_ INET address to a specific peer */
int
-add_ifaddr(struct ldp_peer * p, struct sockaddr * a)
+add_ifaddr(struct ldp_peer * p, const struct sockaddr * a)
{
struct ldp_peer_address *lpa;
@@ -363,7 +368,7 @@ add_ifaddr(struct ldp_peer * p, struct s
/* Deletes an address bounded to a specific peer */
int
-del_ifaddr(struct ldp_peer * p, struct sockaddr * a)
+del_ifaddr(struct ldp_peer * p, const struct sockaddr * a)
{
struct ldp_peer_address *wp;
@@ -379,7 +384,7 @@ del_ifaddr(struct ldp_peer * p, struct s
/* Checks if an address is already bounded */
struct ldp_peer_address *
-check_ifaddr(struct ldp_peer * p, const struct sockaddr * a)
+check_ifaddr(const struct ldp_peer * p, const struct sockaddr * a)
{
struct ldp_peer_address *wp;
@@ -402,7 +407,7 @@ del_all_ifaddr(struct ldp_peer * p)
}
void
-print_bounded_addresses(struct ldp_peer * p)
+print_bounded_addresses(const struct ldp_peer * p)
{
struct ldp_peer_address *wp;
char abuf[512];
@@ -432,8 +437,8 @@ add_my_if_addrs(struct in_addr * a, int
/* Adds a label and a prefix to a specific peer */
int
-ldp_peer_add_mapping(struct ldp_peer * p, struct sockaddr * a, int prefix,
- int label)
+ldp_peer_add_mapping(struct ldp_peer * p, const struct sockaddr * a,
+ int prefix, int label)
{
struct label_mapping *lma;
@@ -459,7 +464,8 @@ ldp_peer_add_mapping(struct ldp_peer * p
}
int
-ldp_peer_delete_mapping(struct ldp_peer * p, struct sockaddr * a, int prefix)
+ldp_peer_delete_mapping(struct ldp_peer * p, const struct sockaddr * a,
+ int prefix)
{
struct label_mapping *lma;
@@ -477,7 +483,8 @@ ldp_peer_delete_mapping(struct ldp_peer
}
struct label_mapping *
-ldp_peer_get_lm(struct ldp_peer * p, struct sockaddr * a, uint prefix)
+ldp_peer_get_lm(const struct ldp_peer * p, const struct sockaddr * a,
+ uint prefix)
{
struct label_mapping *rv;
@@ -492,7 +499,7 @@ ldp_peer_get_lm(struct ldp_peer * p, str
}
-int
+int
ldp_peer_delete_all_mappings(struct ldp_peer * p)
{
struct label_mapping *lma;
@@ -508,7 +515,8 @@ ldp_peer_delete_all_mappings(struct ldp_
/* returns a mapping and its peer */
struct peer_map *
-ldp_test_mapping(struct sockaddr * a, int prefix, struct sockaddr * gate)
+ldp_test_mapping(const struct sockaddr * a, int prefix,
+ const struct sockaddr * gate)
{
struct ldp_peer *lpeer;
struct peer_map *rv = NULL;
Index: src/usr.sbin/ldpd/mpls_interface.c
diff -u src/usr.sbin/ldpd/mpls_interface.c:1.8 src/usr.sbin/ldpd/mpls_interface.c:1.9
--- src/usr.sbin/ldpd/mpls_interface.c:1.8 Sun Jun 23 06:40:26 2013
+++ src/usr.sbin/ldpd/mpls_interface.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: mpls_interface.c,v 1.8 2013/06/23 06:40:26 kefren Exp $ */
+/* $NetBSD: mpls_interface.c,v 1.9 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -53,7 +53,7 @@
extern int no_default_route;
int
-mpls_add_label(struct ldp_peer * p, struct rt_msg * inh_rg,
+mpls_add_label(const struct ldp_peer * p, struct rt_msg * inh_rg,
struct sockaddr * addr, int len, int label, int rlookup)
{
char padd[20];
@@ -241,13 +241,13 @@ mpls_add_label(struct ldp_peer * p, stru
}
int
-mpls_add_ldp_peer(struct ldp_peer * p)
+mpls_add_ldp_peer(const struct ldp_peer * p)
{
return LDP_E_OK;
}
int
-mpls_delete_ldp_peer(struct ldp_peer * p)
+mpls_delete_ldp_peer(const struct ldp_peer * p)
{
/* Reput all the routes also to IPv4 */
Index: src/usr.sbin/ldpd/socketops.c
diff -u src/usr.sbin/ldpd/socketops.c:1.27 src/usr.sbin/ldpd/socketops.c:1.28
--- src/usr.sbin/ldpd/socketops.c:1.27 Wed May 8 08:57:45 2013
+++ src/usr.sbin/ldpd/socketops.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: socketops.c,v 1.27 2013/05/08 08:57:45 kefren Exp $ */
+/* $NetBSD: socketops.c,v 1.28 2013/07/11 05:45:23 kefren Exp $ */
/*
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -85,7 +85,7 @@ static int set_tos(int);
static int socket_reuse_port(int);
static int get_local_addr(struct sockaddr_dl *, struct in_addr *);
static int is_hello_socket(int);
-static int is_passive_if(char *if_name);
+static int is_passive_if(const char *if_name);
int
create_hello_sockets()
@@ -284,7 +284,7 @@ is_hello_socket(int s)
/* Check if interface is passive */
static int
-is_passive_if(char *if_name)
+is_passive_if(const char *if_name)
{
struct passive_if *pif;
@@ -443,8 +443,7 @@ send_hello(void)
sizeof(struct common_hello_tlv) +
IPV4_HELLO_MSG_SIZE - BASIC_HELLO_MSG_SIZE);
/*
- * kefren:
- * I used ID 0 instead of htonl(get_message_id()) because I've
+ * We used ID 0 instead of htonl(get_message_id()) because we've
* seen hellos from Cisco routers doing the same thing
*/
t->messageid = 0;
@@ -944,7 +943,7 @@ new_peer_connection()
union sockunion peer_address, my_address;
struct in_addr *peer_ldp_id = NULL;
struct hello_info *hi;
- int s;
+ int s;
s = accept(ls, &peer_address.sa,
& (socklen_t) { sizeof(union sockunion) } );
@@ -1008,7 +1007,7 @@ new_peer_connection()
}
void
-send_initialize(struct ldp_peer * p)
+send_initialize(const struct ldp_peer * p)
{
struct init_tlv ti;
@@ -1028,7 +1027,7 @@ send_initialize(struct ldp_peer * p)
}
void
-keep_alive(struct ldp_peer * p)
+keep_alive(const struct ldp_peer * p)
{
struct ka_tlv kt;
@@ -1074,7 +1073,8 @@ recv_session_pdu(struct ldp_peer * p)
return;
}
if (c < MIN_PDU_SIZE) {
- debugp("PDU too small received from peer %s\n", inet_ntoa(p->ldp_id));
+ debugp("PDU too small received from peer %s\n",
+ inet_ntoa(p->ldp_id));
return;
}
rpdu = (struct ldp_pdu *) recvspace;
@@ -1277,7 +1277,8 @@ recv_session_pdu(struct ldp_peer * p)
/* Sends a pdu, tlv pair to a connected peer */
int
-send_message(struct ldp_peer * p, struct ldp_pdu * pdu, struct tlv * t)
+send_message(const struct ldp_peer * p, const struct ldp_pdu * pdu,
+ const struct tlv * t)
{
unsigned char sendspace[MAX_PDU_SIZE];
@@ -1325,7 +1326,7 @@ send_message(struct ldp_peer * p, struct
* Encapsulates TLV into a PDU and sends it to a peer
*/
int
-send_tlv(struct ldp_peer * p, struct tlv * t)
+send_tlv(const struct ldp_peer * p, const struct tlv * t)
{
struct ldp_pdu pdu;
@@ -1340,7 +1341,7 @@ send_tlv(struct ldp_peer * p, struct tlv
int
-send_addresses(struct ldp_peer * p)
+send_addresses(const struct ldp_peer * p)
{
struct address_list_tlv *t;
int ret;
Index: src/usr.sbin/ldpd/socketops.h
diff -u src/usr.sbin/ldpd/socketops.h:1.5 src/usr.sbin/ldpd/socketops.h:1.6
--- src/usr.sbin/ldpd/socketops.h:1.5 Mon Jan 28 20:06:52 2013
+++ src/usr.sbin/ldpd/socketops.h Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: socketops.h,v 1.5 2013/01/28 20:06:52 kefren Exp $ */
+/* $NetBSD: socketops.h,v 1.6 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -48,12 +48,13 @@ void send_hello(void);
int get_message_id(void);
int the_big_loop(void);
void new_peer_connection(void);
-void send_initialize(struct ldp_peer *);
-void keep_alive(struct ldp_peer *);
+void send_initialize(const struct ldp_peer *);
+void keep_alive(const struct ldp_peer *);
void recv_session_pdu(struct ldp_peer *);
-int send_message(struct ldp_peer *, struct ldp_pdu *, struct tlv *);
-int send_tlv(struct ldp_peer *, struct tlv *);
-int send_addresses(struct ldp_peer *);
+int send_message(const struct ldp_peer *, const struct ldp_pdu *,
+ const struct tlv *);
+int send_tlv(const struct ldp_peer *, const struct tlv *);
+int send_addresses(const struct ldp_peer *);
struct hello_info {
union sockunion transport_address;
Index: src/usr.sbin/ldpd/tlv_stack.c
diff -u src/usr.sbin/ldpd/tlv_stack.c:1.6 src/usr.sbin/ldpd/tlv_stack.c:1.7
--- src/usr.sbin/ldpd/tlv_stack.c:1.6 Sat Jan 26 17:29:55 2013
+++ src/usr.sbin/ldpd/tlv_stack.c Thu Jul 11 05:45:23 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: tlv_stack.c,v 1.6 2013/01/26 17:29:55 kefren Exp $ */
+/* $NetBSD: tlv_stack.c,v 1.7 2013/07/11 05:45:23 kefren Exp $ */
/*-
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -60,7 +60,7 @@ ldp_ceil8(int x)
int
map_label(struct ldp_peer * p, struct fec_tlv * f, struct label_tlv * l)
{
- int n;
+ int n;
struct prefix_tlv *pref;
union sockunion socktmp;
@@ -125,9 +125,10 @@ map_label(struct ldp_peer * p, struct fe
ntohl(l->label));
/* Try to change RIB only if label is installed */
- if (label_get_by_prefix(&socktmp.sa, pref->prelen) != NULL)
- mpls_add_label(p, NULL, &socktmp.sa, pref->prelen,
- ntohl(l->label), 1);
+ if (label_get_by_prefix(&socktmp.sa, pref->prelen)
+ != NULL)
+ mpls_add_label(p, NULL, &socktmp.sa,
+ pref->prelen, ntohl(l->label), 1);
break;
case FEC_WILDCARD:
fatalp("LDP: Wildcard add from peer %s\n",
@@ -229,7 +230,7 @@ prepare_release(struct tlv * v)
/* Sends a label mapping */
void
-send_label_tlv(struct ldp_peer * peer, struct sockaddr * addr,
+send_label_tlv(const struct ldp_peer * peer, struct sockaddr * addr,
uint8_t prefixlen, uint32_t label, struct label_request_tlv *lrt)
{
struct label_map_tlv *lmt;
@@ -328,7 +329,7 @@ send_all_bindings(struct ldp_peer * peer
/* Sends a label WITHDRAW */
void
-send_withdraw_tlv(struct ldp_peer * peer, struct sockaddr * addr,
+send_withdraw_tlv(const struct ldp_peer * peer, struct sockaddr * addr,
uint8_t prefixlen)
{
struct label_map_tlv *lmt;
@@ -391,7 +392,7 @@ send_withdraw_tlv_to_all(struct sockaddr
}
int
-request_respond(struct ldp_peer *p, struct label_map_tlv *lmt,
+request_respond(const struct ldp_peer *p, struct label_map_tlv *lmt,
struct fec_tlv *fec)
{
struct prefix_tlv *pref;