Portál AbcLinuxu, 25. listopadu 2025 08:13
Ne v neděli, jak jsem si plánoval, ale až dnes jsem se dostal k práci na pingu. Kód jsem rozšířil, upravil, vylepšil a opravil chyby, takže jsem se dostal do stavu, v němž jsem měl být už minulý týden
. Formátovací řetězec nyní zvládá i backslashed znaky (děkuji Yetimu za nakopnutí).
Malé osvěžení z minule, formátovací řetězec se zadává parametrem -o a tady je tabulka podporovaných formátů:
%h .......... hostname %t .......... transmitted %r .......... received %d .......... duplicated %c .......... corrupted %e .......... errors %l .......... packet loss %L .......... packet loss (včetně znaku %) %i .......... time (v ms) -------------------------------------------- %n .......... rtt - min %a .......... rtt - avg %m .......... rtt - max %v .......... rtt - dev %p .......... pipe %g .......... ipg %w .......... ewma
Podporované escape znaky jsou '\a' '\b' '\e' '\f' '\n' '\r' '\t' '\v'. Dále jsem úplně přepsal výstupní funkci, která teď pouze vytvoří formátovací řetězec a ten potom odešle k vytisknutí. Takže v kódu nejsou duplicity (vlastně ještě tam jedna je).
Dále bych se chtěl zaměřit na "méně ukecaný mód" pingu, jak si to přál Zdeněk Štěpánek.
Problém ping versus fping. Minule se tu rozhořel flame na toto téma. V první řadě chci dokončit vylepšení pingu, ale pokud budu mít čas a chuť, můžu dopsat stejnou funkčnost i do fpingu, kód bude víceméně stejný. Ping je prostě standard, takže, doufám, že toto pomůže mnoha lidem.
Tentokrát dávám na web i binárku a prosím o její otestování. Je kompilovaná jako Slackware balíčky, s CFLAGS="-O2 -march=i486 -mcpu=i686".
iputils-ss020927.tar.gz(119K) - zdrojové kódy iputils
iputils-o.patch.gz (2,6K) můj patch
ping (130,4K)
Tiskni
Sdílej:
).
Floating point exceptiona pokud smí, dumpne to core. Asi nějaká dělení nulou nebo tak něco. Co je horší, dělá to i bez -o, nepatchovaná verze to nedělá. Jinak jsem patch musel upravit, aby šel aplikovat na iputils z FC4 spolu s ostatními patchi (nic velkého, jen nějaká přetypování na long). Je zde jako patch 99: http://trific.ath.cx/Ftp/tmp/iputils-20020927-22.src.rpm
[-o format]) a manuálovou stránku namísto zveřejňování seznamu formátů tady. Je to otrava, ale na akceptování patche by to mělo mít positivní vliv...
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.