Odczytaj ładunek ICMP z recvmsg z flagą MSG_ERRQUEUE

Używam gniazd BSD do budowania zaawansowanego programu traceroute, który nie potrzebuje uprawnień roota (takich jak tracepath). Używając UDP i związanego gniazda, dzwonię:

recvmsg(socket, header, MSG_ERRQUEUE)

Otrzymuję informację o rzekomym powiadomieniu ICMP, że wywołany został wcześniej wysłany pakiet. Czy wiesz, czy możliwy jest dostęp do ładunku ICMP (który powinien być wcześniej wysłanym pakietem)?

Przeczytałem ze strony man recvmsg:

[..] The payload of the original packet that caused the error
is passed as normal data via msg_iovec. [..] 

Ale nie mogę znaleźć niczego użytecznego, wydaje się, że dane są losowe (użyłem wireshark do krzyżowego sprawdzenia danych).

questionAnswers(1)

yourAnswerToTheQuestion