]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-rsvp.c
Correctly check for various values of the ICMP type field.
[tcpdump] / print-rsvp.c
index 6a74cfe5ca52209ca29c75dac1d8dd5a7b3da116..6aa2f6d71bd6eeeb8eb3690084f0157edf3b75df 100644 (file)
@@ -636,7 +636,15 @@ rsvp_intserv_print(const u_char *tptr, u_short obj_tlen) {
 }
 
 static int
-rsvp_obj_print (const u_char *pptr, u_int plen, const u_char *tptr,
+rsvp_obj_print (const u_char *pptr
+#ifndef HAVE_LIBCRYPTO
+_U_
+#endif
+, u_int plen
+#ifndef HAVE_LIBCRYPTO
+_U_
+#endif
+, const u_char *tptr,
                 const char *ident, u_int tlen) {
 
     const struct rsvp_object_header *rsvp_obj_header;
@@ -1079,12 +1087,12 @@ rsvp_obj_print (const u_char *pptr, u_int plen, const u_char *tptr,
                                bittok2str(rsvp_obj_rro_label_flag_values,
                                    "none",
                                    *(obj_tptr+2)),
-                                   *(obj_tptr+2),
+                               *(obj_tptr+2),
                                tok2str(rsvp_ctype_values,
                                        "Unknown",
                                        *(obj_tptr+3) + 256*RSVP_OBJ_RRO),
-                                       *(obj_tptr+3),
-                                       ntohl(*(unsigned int *)(obj_tptr+4)));
+                               *(obj_tptr+3),
+                               EXTRACT_32BITS(obj_tptr+4));
                     }
                     obj_tlen-=*(obj_tptr+1);
                     obj_tptr+=*(obj_tptr+1);