• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/zebra/bgpd/

Lines Matching defs:assegment

44 struct assegment
138 struct assegment *assegment;
164 assegment = (struct assegment *) pnt;
172 assegment = (struct assegment *) pnt;
175 if ((assegment->type != AS_SET) &&
176 (assegment->type != AS_SEQUENCE) &&
177 (assegment->type != AS_CONFED_SET) &&
178 (assegment->type != AS_CONFED_SEQUENCE))
185 if ((pnt + (assegment->length * AS_VALUE_SIZE) + AS_HEADER_SIZE) > end)
192 estimate_len = ((assegment->length * 6) + 4);
201 /* If assegment type is changed, print previous type's end
208 if (assegment->type != AS_SEQUENCE)
209 str_buf[str_pnt++] = aspath_delimiter_char (assegment->type, AS_SEG_START);
214 if (assegment->type != AS_CONFED_SEQUENCE
215 && assegment->type != AS_CONFED_SET)
217 if (assegment->type == AS_SEQUENCE)
218 count += assegment->length;
219 else if (assegment->type == AS_SET)
223 for (i = 0; i < assegment->length; i++)
229 if (assegment->type == AS_SET
230 || assegment->type == AS_CONFED_SET)
238 len = sprintf (str_buf + str_pnt, "%d", ntohs (assegment->asval[i]));
242 type = assegment->type;
243 pnt += (assegment->length * AS_VALUE_SIZE) + AS_HEADER_SIZE;
246 if (assegment->type != AS_SEQUENCE)
247 str_buf[str_pnt++] = aspath_delimiter_char (assegment->type, AS_SEG_END);
367 aspath_aggregate_segment_copy (struct aspath *aspath, struct assegment *seg,
370 struct assegment *newseg;
375 newseg = (struct assegment *) aspath->data;
382 newseg = (struct assegment *) (aspath->data + aspath->length);
393 struct assegment *
394 aspath_aggregate_as_set_add (struct aspath *aspath, struct assegment *asset,
405 asset = (struct assegment *) aspath->data;
412 asset = (struct assegment *) (aspath->data + aspath->length);
432 asset = (struct assegment *) (aspath->data + offset);
454 struct assegment *seg1;
455 struct assegment *seg2;
457 struct assegment *asset;
468 seg1 = (struct assegment *) cp1;
469 seg2 = (struct assegment *) cp2;
499 seg1 = (struct assegment *) cp1;
500 seg2 = (struct assegment *) cp2;
510 seg1 = (struct assegment *) cp1;
522 seg2 = (struct assegment *) cp2;
541 struct assegment *assegment;
547 assegment = (struct assegment *) pnt;
549 if (assegment
550 && assegment->type == AS_SEQUENCE
551 && assegment->asval[0] == htons (asno))
563 struct assegment *assegment;
575 assegment = (struct assegment *) pnt;
577 for (i = 0; i < assegment->length; i++)
578 if (assegment->asval[i] == htons (asno))
581 pnt += (assegment->length * AS_VALUE_SIZE) + AS_HEADER_SIZE;
592 struct assegment *assegment;
606 assegment = (struct assegment *) pnt;
608 for (i = 0; i < assegment->length; i++)
610 if (ntohs (assegment->asval[i]) < BGP_PRIVATE_AS_MIN
611 || ntohs (assegment->asval[i]) > BGP_PRIVATE_AS_MAX)
614 pnt += (assegment->length * AS_VALUE_SIZE) + AS_HEADER_SIZE;
645 struct assegment *seg1 = NULL;
646 struct assegment *seg2 = NULL;
651 seg2 = (struct assegment *) as2->data;
663 /* assegment points last segment of as1. */
668 seg1 = (struct assegment *) pnt;
683 struct assegment *seg = NULL;
688 seg = (struct assegment *) (newdata + ((caddr_t)seg1 - as1->data));
713 struct assegment *assegment;
715 assegment = (struct assegment *) aspath->data;
718 if (assegment == NULL || assegment->length == 0)
722 if (assegment)
727 assegment = (struct assegment *) aspath->data;
728 assegment->type = type;
729 assegment->length = 1;
730 assegment->asval[0] = htons (asno);
735 if (assegment->type == type)
738 struct assegment *newsegment;
741 newsegment = (struct assegment *) newdata;
744 newsegment->length = assegment->length + 1;
757 struct assegment *newsegment;
760 newsegment = (struct assegment *) newdata;
791 struct assegment *seg1;
792 struct assegment *seg2;
796 seg1 = (struct assegment *) aspath1->data;
797 seg2 = (struct assegment *) aspath2->data;
801 seg1 = (struct assegment *) ((caddr_t) seg1 + ASSEGMENT_LEN (seg1));
804 seg2 = (struct assegment *) ((caddr_t) seg2 + ASSEGMENT_LEN (seg2));
827 struct assegment *seg1;
828 struct assegment *seg2;
836 seg1 = (struct assegment *) aspath1->data;
837 seg2 = (struct assegment *) aspath2->data;
860 struct assegment *assegment;
865 assegment = (struct assegment *) aspath->data;
867 while (assegment)
869 if (assegment->type != AS_CONFED_SEQUENCE)
872 seglen = ASSEGMENT_LEN (assegment);
889 assegment = (struct assegment *) aspath->data;
908 struct assegment *assegment;
916 assegment = (struct assegment *) pnt;
921 assegment = (struct assegment *) pnt;
924 value assegment->length * 2. */
925 pnt += (AS_HEADER_SIZE + (assegment->length * AS_VALUE_SIZE));
928 assegment->asval[assegment->length] = htons (asno);
929 assegment->length++;
936 struct assegment *assegment;
941 assegment = (struct assegment *) as->data;
947 assegment = (struct assegment *) (as->data + as->length);
951 assegment->type = type;
952 assegment->length = 0;