| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
| |
changes of draft-ietf-isis-gmpls-extensions being now a local/remote ID
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
easier extensions;
|
| |
|
| |
|
| |
|
|
|
|
| |
better troubleshoot routing-churn
|
| |
|
| |
|
|
|
|
| |
should be really printed in ether_print() using the eflag
|
|
|
|
| |
to print 20-byte beasts
|
|
|
|
|
|
|
| |
"(x == A) || (x == B)", as x cannot simultaneously be equal to A and B.
"x == A ^ x == B" produces a compiler warning from GCC, so fix it by
using || instead - "x == A || x == B" doesn't produce such a warning.
|
|
|
|
|
|
| |
- sysIDs
- nodeIDs
- lspIDs
|
|
|
|
|
| |
- bugfix for parsing the SHARED_RISK_GROUP TLV
- change type and len variables to tlv_type and tlv_len
|
| |
|
| |
|
|
|
|
|
|
| |
in the IP Reach subTLV dissector
- make the IP Reach subTLV decoder show the tag value in
decimal notation like popular router OSes do
|
|
|
|
|
| |
characters printed - on older platforms with a V7/BSD-style API, it
doesn't.
|
| |
|
|
|
|
|
|
|
| |
- more use of bittok2str() and Flags: [xyz]
- fixed buffer allocation for ipv6 (14-> should be 16)
- old-style ip_reach output looks now similar
to new_style ip_reach
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compile with Sun C, as "interface.h" isn't being included before the
structures are being declared.
Furthermore, in the files that Sun C *can* compile, it doesn't cause Sun
C to generate code that's safe with unaligned accesses, as
"__attribute__" is defined as a do-nothing macro with compilers that
don't support it.
Therefore, we get rid of that tag on the structures to which it was
added, and instead use "EXTRACT_16BIT()" and "EXTRACT_32BIT()" to fetch
16-bit and 32-bit big-endian quantities from packets. We also fix some
other references to multi-byte quantities to get rid of code that tries
to do unaligned loads on platforms that don't support them.
We also throw in a hack that makes those macros use
"__attribute__((packed))" on structures containing only one 16-bit or
32-bit integer to get the compiler to generate unaligned-safe code
rather than doing it by hand. (GCC on SPARC produces the same code that
doing it by hand does; I don't know if GCC on any other big-endian
strict-alignment processor generates better code for that case. On
little-endian processors, as "ntohs()" and "ntohl()" might be functions,
that might actually produce worse code.)
Fix some places to use "%u" rather than "%d" to print unsigned
quantities.
|
|
|
|
| |
don't cast a "char *" to "u_int8_t *" when passing it to that function.
|
|
|
|
|
|
|
| |
create a common extended IP reach decoder
which is called from TLVs (135,235,236,237)
we process the TLV and optional subTLVs and return
he amount of processed bytes
|
|
|
|
|
|
|
|
| |
The floating-point numbers in IS-IS packets are stored in big-endian
format; extract them as such, so that when we process them as numbers
they're in native byte order, not network byte order.
removed bittok2str() lookalike;
|
| |
|
|
|
|
| |
forth while i'm here
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From Neil T. Spring: fixes for many of those warnings:
addrtoname.c, configure.in: Linux needs netinet/ether.h for
ether_ntohost
print-*.c: change char *foo = "bar" to const char *foo = "bar"
to appease -Wwrite-strings; should affect no run-time behavior.
print-*.c: make some variables unsigned.
print-bgp.c: plen ('prefix len') is unsigned, no reason to
validate by comparing to zero.
print-cnfp.c, print-rx.c: use intoa, provided by addrtoname,
instead of inet_ntoa.
print-domain.c: unsigned int l; (l=foo()) < 0 is guaranteed to
be false, so check for (u_int)-1, which represents failure,
explicitly.
print-isakmp.c: complete initialization of attrmap objects.
print-lwres.c: "if(x); print foo;" seemed much more likely to be
intended to be "if(x) { print foo; }".
print-smb.c: complete initialization of some structures.
In addition, add some fixes for the signed vs. unsigned comparison
warnings:
extract.h: cast the result of the byte-extraction-and-combining,
as, at least for the 16-bit version, C's integral promotions
will turn "u_int16_t" into "int" if there are other "int"s
nearby.
print-*.c: make some more variables unsigned, or add casts to an
unsigned type of signed values known not to be negative, or add
casts to "int" of unsigned values known to fit in an "int", and
make other changes needed to handle the aforementioned variables
now being unsigned.
print-isakmp.c: clean up the handling of error/status indicators
in notify messages.
print-ppp.c: get rid of a check that an unsigned quantity is >=
0.
print-radius.c: clean up some of the bounds checking.
print-smb.c: extract the word count into a "u_int" to avoid the
aforementioned problems with C's integral promotions.
print-snmp.c: change a check that an unsigned variable is >= 0
to a check that it's != 0.
Also, fix some formats to use "%u" rather than "%d" for unsigned
quantities.
|
|
|
|
|
| |
support for Hello PDU Sequence Numbers
described in draft-shen-isis-iih-sequence-00.txt
|
| |
|
| |
|
|
|
|
| |
by prepending a length: string;
|
| |
|
| |
|
| |
|
|
|
|
| |
isis_print_unknown_data{}
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ES Neighbor(s) TLV #3
Partition DIS TLV #4
Prefix Neighbors TLV #5
Prefix Neighbor(s)
(variable length) TLV #7
clarified use of SYSTEM_ID_LEN, ETHER_ADDR_LEN, LSP_ID_LEN
plus some cleanups, boundary checks and modularization
(isis_print_metric_block)
|
|
|
|
| |
"print-isoclns.c".
|
| |
|