Lines Matching refs:pref
64 struct prefix_tlv *pref; in map_label() local
87 pref = (struct prefix_tlv *) (f + 1); in map_label()
98 for (; n > 0; pref = (struct prefix_tlv *) ((unsigned char *) pref + in map_label()
99 ldp_ceil8(pref->prelen) + TLV_TYPE_LENGTH)) { in map_label()
100 n -= ldp_ceil8(pref->prelen) + TLV_TYPE_LENGTH; in map_label()
101 if (ntohs(pref->af) == LDP_AF_INET) { in map_label()
104 } else if (ntohs(pref->af) == LDP_AF_INET6) { in map_label()
109 "length %d)\n", ntohs(pref->af), pref->type, in map_label()
110 pref->prelen); in map_label()
113 switch(pref->type) { in map_label()
117 memcpy(&socktmp.sin.sin_addr, &pref->prefix, in map_label()
118 ldp_ceil8(pref->prelen)); in map_label()
120 memcpy(&socktmp.sin6.sin6_addr, &pref->prefix, in map_label()
121 ldp_ceil8(pref->prelen)); in map_label()
124 pref->prelen); in map_label()
126 ldp_peer_add_mapping(p, &socktmp.sa, pref->prelen, in map_label()
131 pref->prelen); in map_label()
146 fatalp("Unknown FEC type %d\n", pref->type); in map_label()
158 struct prefix_tlv *pref; in withdraw_label() local
170 pref = (struct prefix_tlv *) & f[1]; in withdraw_label()
173 if (ntohs(pref->af) == LDP_AF_INET) { in withdraw_label()
176 } else if (ntohs(pref->af) != LDP_AF_INET6) { in withdraw_label()
181 ntohs(pref->af), pref->type, pref->prelen); in withdraw_label()
184 switch(pref->type) { in withdraw_label()
188 memcpy(&socktmp.sin.sin_addr, &pref->prefix, in withdraw_label()
189 ldp_ceil8(pref->prelen)); in withdraw_label()
191 memcpy(&socktmp.sin6.sin6_addr, &pref->prefix, in withdraw_label()
192 ldp_ceil8(pref->prelen)); in withdraw_label()
194 pref->prelen); in withdraw_label()
197 ldp_peer_delete_mapping(p, &socktmp.sa, pref->prelen); in withdraw_label()
203 lab = label_get_by_prefix(&socktmp.sa, pref->prelen); in withdraw_label()
216 fatalp("Unknown FEC type %d\n", pref->type); in withdraw_label()
412 const struct prefix_tlv *pref; in request_respond() local
421 pref = (const struct prefix_tlv *) (fec + 1); in request_respond()
424 if (ntohs(pref->af) == LDP_AF_INET) { in request_respond()
427 } else if (ntohs(pref->af) == LDP_AF_INET6) { in request_respond()
435 switch (pref->type) { in request_respond()
440 memcpy(&socktmp.sin.sin_addr, &pref->prefix, in request_respond()
441 ldp_ceil8(pref->prelen)); in request_respond()
443 memcpy(&socktmp.sin6.sin6_addr, &pref->prefix, in request_respond()
444 ldp_ceil8(pref->prelen)); in request_respond()
446 pref->prelen); in request_respond()
448 lab = label_get_by_prefix(&socktmp.sa, pref->prelen); in request_respond()
455 send_label_tlv(p, &socktmp.sa, pref->prelen, lab->binding, in request_respond()