0x4E4F@lemmy.dbzer0.com to linuxmemes@lemmy.world · 9 months agoPing is so mean 🥺lemmy.dbzer0.comimagemessage-square20fedilinkarrow-up1126arrow-down13
arrow-up1123arrow-down1imagePing is so mean 🥺lemmy.dbzer0.com0x4E4F@lemmy.dbzer0.com to linuxmemes@lemmy.world · 9 months agomessage-square20fedilink
minus-squareTrailblazing Braille Taser@lemmy.dbzer0.comlinkfedilinkarrow-up33·9 months agoWow, that is an unhelpful error message. It could have told you it was expecting a number. It turns out that -i is short for “interval” and expects a number, whereas -I is used to specify an interface.
minus-squareAniki 🌱🌿@lemm.eelinkfedilinkEnglisharrow-up15·9 months agoThis exactly. And because this is open-source, its super easy to track this down. I searched for the source of the error message: https://github.com/iputils/iputils/blob/3400f3a740942064a545f02aabcf68e234733297/ping/ping.c#L237 see this is ping_strtod function - so search for that function name and the first hit is the ‘-i’ case: case 'i': { double optval; optval = ping_strtod(optarg, _("bad timing interval")); if (isless(optval, 0) || isgreater(optval, (double)INT_MAX / 1000)) error(2, 0, _("bad timing interval: %s"), optarg); rts.interval = (int)(optval * 1000); rts.opt_interval = 1; } break;
Wow, that is an unhelpful error message. It could have told you it was expecting a number. It turns out that
-i
is short for “interval” and expects a number, whereas-I
is used to specify an interface.This exactly. And because this is open-source, its super easy to track this down. I searched for the source of the error message:
https://github.com/iputils/iputils/blob/3400f3a740942064a545f02aabcf68e234733297/ping/ping.c#L237
see this is
ping_strtod
function - so search for that function name and the first hit is the ‘-i’ case:case 'i': { double optval; optval = ping_strtod(optarg, _("bad timing interval")); if (isless(optval, 0) || isgreater(optval, (double)INT_MAX / 1000)) error(2, 0, _("bad timing interval: %s"), optarg); rts.interval = (int)(optval * 1000); rts.opt_interval = 1; } break;