|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Eugene Grosbein 2:5006/1 08 Feb 2007 00:13:21 To : Alex Semenyaka Subject : Re: хитрый ping -------------------------------------------------------------------------------- 07 фев 2007, среда, в 18:21 KRAST, Alex Semenyaka написал(а): VS>> Чтобы писал в лог timestamp потерянных пакетов? VS>> А вот не нашёл сходу. AS> Hу напишу вечером :) Че там писать-то? Hайти в сорцах пинга место, где ping -A пищит и поменять на выдачу таймстампа. Hу вот типа такого: - --- ping.c.orig Wed Feb 7 23:07:04 2007 +++ ping.c Wed Feb 7 23:12:01 2007 @@ -144,6 +144,7 @@ #define F_TIME 0x100000 #define F_SWEEP 0x200000 #define F_WAITTIME 0x400000 +#define F_STAMPMISSED 0x800000 /* * MAX_DUP_CHK is the number of bits in received table, i.e. the maximum @@ -264,7 +265,7 @@ outpack = outpackhdr + sizeof(struct ip); while ((ch = getopt(argc, argv, - "Aac:DdfG:g:h:I:i:Ll:M:m:nop:QqRrS:s:T:t:vW:z:" + "AaBc:DdfG:g:h:I:i:Ll:M:m:nop:QqRrS:s:T:t:vW:z:" #ifdef IPSEC #ifdef IPSEC_POLICY_IPSEC "P:" @@ -279,6 +280,9 @@ case 'a': options |= F_AUDIBLE; break; + case 'B': + options |= F_STAMPMISSED; + break; case 'c': ultmp = strtoul(optarg, &ep, 0); if (*ep || ep == optarg || ultmp > LONG_MAX || !ultmp) @@ -901,6 +905,10 @@ nmissedmax = ntransmitted - nreceived - 1; if (options & F_MISSED) (void)write(STDOUT_FILENO, &BBELL, 1); + if (options & F_STAMPMISSED) { + time_t tm = time(NULL); + (void)write(STDOUT_FILENO, ctime(&tm), 25); + } } } } Eugene -- Three things are certain: Death, taxes and lost data. Guess which has occurred. --- slrn/0.9.8.0 (FreeBSD) * Origin: Svyaz Service JSC (2:5006/1@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/260937dc1586a.html, оценка из 5, голосов 10
|