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