add ttl error when verbose is active

This commit is contained in:
2025-06-03 00:43:19 +02:00
parent c2a00ab4b3
commit 71ec3ea4d2
4 changed files with 93 additions and 29 deletions

View File

@ -6,7 +6,7 @@
/* By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/05/01 17:38:58 by tomoron #+# #+# */
/* Updated: 2025/05/22 15:25:38 by tomoron ### ########.fr */
/* Updated: 2025/06/03 00:27:30 by tomoron ### ########.fr */
/* */
/* ************************************************************************** */
@ -38,26 +38,27 @@ void waitlist_free(t_waitlist *lst)
}
}
void waitlist_remove(t_waitlist **lst, uint16_t seq, t_settings *set, t_stats *stats, uint8_t ttl)
t_waitlist *waitlist_remove(t_waitlist **lst, t_icmp_ip_reply *res, int is_ttl_exceeded)
{
t_waitlist *prev;
t_waitlist *cur;
prev = 0;
cur = *lst;
while(cur && cur->seq != seq)
if(is_ttl_exceeded)
res = (void *)res + sizeof(struct iphdr) + 8;
res->icmp.sequence = htons(res->icmp.sequence);
while(cur && cur->seq != res->icmp.sequence)
{
printf("%d, %d\n", cur->seq, seq);
printf("%d, %d\n", cur->seq, res->icmp.sequence);
prev = cur;
cur = cur->next;
}
if(!cur)
return ;
return (0);
if(!prev)
*lst = cur->next;
else
prev->next = cur->next;
show_ping_res_line(cur, set, seq, stats, ttl);
free(cur);
return(cur);
}