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;

Reply via email to