Matt Kimball <mkimball@xmission.com> is the primary author of mtr.
- Roger Wolff <R.E.Wolff@BitWizard.nl> is currently maintaing mtr.
+ Roger Wolff <R.E.Wolff@BitWizard.nl> is currently maintaining mtr.
Bug reports and feature requests should be sent as described in
position 4, then we'd send out 5-9 (and because the max-host is now at
9, we'll send them out at 1s/9 = 111ms intervals). When the reply from
host 9 comes back, we'll start probing for host 10-15 (at about 60ms
-intervals). But suppose the network delay upto host 9 is already 200ms
+intervals). But suppose the network delay up to host 9 is already 200ms
and suppose our destination host is at position 11. Then by the time
the packet from host 11 comes back, we'll already have sent probe
packets for position 12, 13, and 14! Those will come back as
v0.74 Martin Pels' patch to allow UDP probes.
KES reported a build problem. Turns out I need to install gtk-1.2
- on my development sytem, otherwise my release script causes the
+ on my development system, otherwise my release script causes the
build to break.
changed some docs to advertise the new mailing list.
added documentation for the Mac OS X compilation problem.
Nico Lichtmaier's cleanup-gtk patch. (now mtr uses a more modern
dialect of gtk).
- v0.73 Some securty patches. Although MTR drops privileges as soon
+ v0.73 Some security patches. Although MTR drops privileges as soon
as possible after opening the sockets, it still had some
sprintf calls, which have now been converted into snprintf.
No changes.
v0.66 Through the Debian bugtracking system a bug report and
- fix was sent my way, that deals with stupid optmization
+ fix was sent my way, that deals with stupid optimization
trying to save some 768 bytes of memory, sacrificing "it
works" on a different architecture... (default char signedness)
v0.63 Suggestion by RCW: Add -lm at line 70 of Configure.in.
On my system no ill effects ensued, so this version released
- so that he can test if it still works on his sytem.
+ so that he can test if it still works on his system.
Let me add that it's stupid that I have to specify that this
this program now requires Automake version 1.5 to build, where
rewrite some things. Now 50 lines of code less, but cleaner
code. :-)
- v0.58 I don't remember. Fogot to update this. :-( Check the
+ v0.58 I don't remember. Forgot to update this. :-( Check the
patch.
v0.57 Lots of whitespace cleanups. And a DNS fix: Don't do DNS
v0.48 Draw names in red (GTK) or bold (Curses) if host doesn't
respond.
- v0.47 Fixed a (believed-) non-exploitable bufferoverflow.
+ v0.47 Fixed a (believed-) non-exploitable buffer overflow.
Thanks Damian.
v0.46 Included patch to be able to specify outgoing interface
switching between numeric / dns names, and some minor
stuff I forgot. This release serves as a code-sync-release.
new version with even more new stuff in about two weeks!
- I'm afraid I don't know how to fix the MaxOS-X compilation
+ I'm afraid I don't know how to fix the MacOS-X compilation
problems in the source. Help wanted...
v0.44 David Stone adds the "last" column to the gtk version.
+ If hop doesn't respond, draw its name in red (GTK) or bold (curses)
2002-02-09 bodq <bohdan@vstu.edu.ua>
- + Added --address option to bind to given IP addess
+ + Added --address option to bind to given IP address
2001-04-15 root <alane@geeksrus.net>
+ Added this file so that automake won't complain.
dropping root privileges.
This should severely limit the possibilities of using mtr to breach
-system security. This means the worst case scenerio is as follows:
+system security. This means the worst case scenario is as follows:
Due to some oversight in the mtr code, a malicious user is able to
overrun one of mtr's internal buffers with binary code that is
eventually executed. The malicious user is still not able to read
from or write to any system files which they wouldn't normally have
-permission to read or write to, repectively. The only privilege
+permission to read or write to, respectively. The only privilege
gained is access to the raw socket descriptors, which would allow
the malicious user to listen to all ICMP packets arriving at the
system, and to send forged packets with arbitrary contents.
// The autoconf system provides us with the NO_IPINFO define.
// Littering the code with #ifndef NO_IPINFO (double negative)
-// does not benefit readabilty. So here we invert the sense of the
+// does not benefit readability. So here we invert the sense of the
// define.
//
-// Similarly, this include file should be included unconditially.
+// Similarly, this include file should be included unconditionally.
// It will evaluate to nothing if we don't need it.
#ifndef NO_IPINFO
#include <stdlib.h>
#include <string.h>
-/* MacOSX may need this before scoket.h...*/
+/* MacOSX may need this before socket.h...*/
#if defined(HAVE_SYS_TYPES_H)
#include <sys/types.h>
#else
byte databyte_a;
/* rd:1 recursion desired
* tc:1 truncated message
- * aa:1 authoritive answer
+ * aa:1 authoritative answer
* opcode:4 purpose of message
* qr:1 response flag
*/
}
for (rr = hp->ancount + hp->nscount + hp->arcount;rr;rr--) {
if (c > eob) {
- restell("Resolver error: Packet does not contain all specified resouce records.");
+ restell("Resolver error: Packet does not contain all specified resource records.");
return;
}
*namestring = '\0';
int best;
int worst;
int avg; /* average: addByMin */
- int gmean; /* geometirc mean: addByMin */
+ int gmean; /* geometric mean: addByMin */
int jitter; /* current jitter, defined as t1-t0 addByMin */
/*int jbest;*/ /* min jitter, of cause it is 0, not needed */
int javg; /* avg jitter */
/* The second condition in the next "if" statement was added in mtr-0.56,
but I don't remember why. It makes mtr stop skipping sections of unknown
hosts. Removed in 0.65.
- If the line proves neccesary, it should at least NOT trigger that line
+ If the line proves necessary, it should at least NOT trigger that line
when host[i].addr == 0 */
if ( ( addrcmp( (void *) &(host[i].addr),
(void *) remoteaddress, af ) == 0 )
if ( /* success in reaching target */
( addrcmp( (void *) &(host[batch_at].addr),
(void *) remoteaddress, af ) == 0 ) ||
- /* fail in consecuitive MAX_UNKNOWN_HOSTS (firewall?) */
+ /* fail in consecutive MAX_UNKNOWN_HOSTS (firewall?) */
(n_unknown > MAX_UNKNOWN_HOSTS) ||
/* or reach limit */
(batch_at >= maxTTL-1)) {