Removed confusing underflow patch Removed format patch bacause of -w option
This commit is contained in:
parent
42a5d23080
commit
56c9b0785e
@ -1,205 +0,0 @@
|
||||
--- mtr-0.69/dns.c.CVE-2002-0497 2005-01-11 09:32:42.000000000 +0100
|
||||
+++ mtr-0.69/dns.c 2005-02-09 18:13:12.000000000 +0100
|
||||
@@ -877,7 +877,7 @@
|
||||
if (type == T_A) {
|
||||
dorequest(rp->hostname,type,rp->id);
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Sent reverse authentication request for \"%s\".",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Sent reverse authentication request for \"%s\".",
|
||||
rp->hostname);
|
||||
restell(tempstring);
|
||||
}
|
||||
@@ -898,7 +898,7 @@
|
||||
}
|
||||
dorequest(tempstring,type,rp->id);
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Sent domain lookup request for \"%s\".",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Sent domain lookup request for \"%s\".",
|
||||
strlongip( &(rp->ip) ));
|
||||
restell(tempstring);
|
||||
}
|
||||
@@ -934,7 +934,7 @@
|
||||
rp->expiretime = sweeptime + (double)ttl;
|
||||
untieresolve(rp);
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Lookup successful: %s\n",rp->hostname);
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Lookup successful: %s\n",rp->hostname);
|
||||
restell(tempstring);
|
||||
}
|
||||
}
|
||||
@@ -991,7 +991,7 @@
|
||||
case NOERROR:
|
||||
if (hp->ancount) {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Received nameserver reply. (qd:%u an:%u ns:%u ar:%u)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Received nameserver reply. (qd:%u an:%u ns:%u ar:%u)",
|
||||
hp->qdcount,hp->ancount,hp->nscount,hp->arcount);
|
||||
restell(tempstring);
|
||||
}
|
||||
@@ -1031,14 +1031,14 @@
|
||||
namestring[strlen(stackstring)] = '\0';
|
||||
if (strcasecmp(stackstring,namestring)) {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Unknown query packet dropped. (\"%s\" does not match \"%s\")",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Unknown query packet dropped. (\"%s\" does not match \"%s\")",
|
||||
stackstring,namestring);
|
||||
restell(tempstring);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Queried domain name: \"%s\"",namestring);
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Queried domain name: \"%s\"",namestring);
|
||||
restell(tempstring);
|
||||
}
|
||||
c+= r;
|
||||
@@ -1049,7 +1049,7 @@
|
||||
qdatatype = sucknetword(c);
|
||||
qclass = sucknetword(c);
|
||||
if (qclass != C_IN) {
|
||||
- sprintf(tempstring,"Resolver error: Received unsupported query class: %u (%s)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver error: Received unsupported query class: %u (%s)",
|
||||
qclass,qclass < ClasstypeCount ? classtypes[qclass] :
|
||||
classtypes[ClasstypeCount]);
|
||||
restell(tempstring);
|
||||
@@ -1063,7 +1063,7 @@
|
||||
}
|
||||
break;
|
||||
default:
|
||||
- sprintf(tempstring,"Resolver error: Received unimplemented query type: %u (%s)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver error: Received unimplemented query type: %u (%s)",
|
||||
qdatatype,qdatatype < ResourcetypeCount ?
|
||||
resourcetypes[qdatatype] : resourcetypes[ResourcetypeCount]);
|
||||
restell(tempstring);
|
||||
@@ -1085,7 +1085,7 @@
|
||||
else
|
||||
usefulanswer = 1;
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: answered domain query: \"%s\"",namestring);
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: answered domain query: \"%s\"",namestring);
|
||||
restell(tempstring);
|
||||
}
|
||||
c+= r;
|
||||
@@ -1098,10 +1098,10 @@
|
||||
ttl = sucknetlong(c);
|
||||
rdatalength = sucknetword(c);
|
||||
if (class != qclass) {
|
||||
- sprintf(tempstring,"query class: %u (%s)",qclass,qclass < ClasstypeCount ?
|
||||
+ snprintf(tempstring, sizeof(tempstring), "query class: %u (%s)",qclass,qclass < ClasstypeCount ?
|
||||
classtypes[qclass] : classtypes[ClasstypeCount]);
|
||||
restell(tempstring);
|
||||
- sprintf(tempstring,"rr class: %u (%s)",class,class < ClasstypeCount ?
|
||||
+ snprintf(tempstring, sizeof(tempstring), "rr class: %u (%s)",class,class < ClasstypeCount ?
|
||||
classtypes[class] : classtypes[ClasstypeCount]);
|
||||
restell(tempstring);
|
||||
restell("Resolver error: Answered class does not match queried class.");
|
||||
@@ -1117,20 +1117,20 @@
|
||||
}
|
||||
if (datatype == qdatatype || datatype == T_CNAME) {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: TTL: %s",strtdiff(sendstring,ttl));
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: TTL: %s",strtdiff(sendstring,ttl));
|
||||
restell(tempstring);
|
||||
}
|
||||
if (usefulanswer)
|
||||
switch (datatype) {
|
||||
case T_A:
|
||||
if (rdatalength != 4) {
|
||||
- sprintf(tempstring,"Resolver error: Unsupported rdata format for \"A\" type. (%u bytes)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver error: Unsupported rdata format for \"A\" type. (%u bytes)",
|
||||
rdatalength);
|
||||
restell(tempstring);
|
||||
return;
|
||||
}
|
||||
if ( addrcmp( (void *) &(rp->ip), (void *) c, af ) == 0 ) {
|
||||
- sprintf(tempstring,"Resolver: Reverse authentication failed: %s != ",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Reverse authentication failed: %s != ",
|
||||
strlongip( &(rp->ip) ));
|
||||
addrcpy( (void *) &alignedip, (void *) c, af );
|
||||
strcat(tempstring,strlongip( &alignedip ));
|
||||
@@ -1138,7 +1138,7 @@
|
||||
res_hostipmismatch++;
|
||||
failrp(rp);
|
||||
} else {
|
||||
- sprintf(tempstring,"Resolver: Reverse authentication complete: %s == \"%s\".",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Reverse authentication complete: %s == \"%s\".",
|
||||
strlongip( &(rp->ip) ),nonull(rp->hostname));
|
||||
restell(tempstring);
|
||||
res_reversesuccess++;
|
||||
@@ -1155,7 +1155,7 @@
|
||||
return;
|
||||
}
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Answered domain: \"%s\"",namestring);
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Answered domain: \"%s\"",namestring);
|
||||
restell(tempstring);
|
||||
}
|
||||
if (r > HostnameLength) {
|
||||
@@ -1180,14 +1180,14 @@
|
||||
}
|
||||
break;
|
||||
default:
|
||||
- sprintf(tempstring,"Resolver error: Received unimplemented data type: %u (%s)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver error: Received unimplemented data type: %u (%s)",
|
||||
datatype,datatype < ResourcetypeCount ?
|
||||
resourcetypes[datatype] : resourcetypes[ResourcetypeCount]);
|
||||
restell(tempstring);
|
||||
}
|
||||
} else {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Ignoring resource type %u. (%s)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Ignoring resource type %u. (%s)",
|
||||
datatype,datatype < ResourcetypeCount ?
|
||||
resourcetypes[datatype] : resourcetypes[ResourcetypeCount]);
|
||||
restell(tempstring);
|
||||
@@ -1205,7 +1205,7 @@
|
||||
failrp(rp);
|
||||
break;
|
||||
default:
|
||||
- sprintf(tempstring,"Resolver: Received error response %u. (%s)",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Received error response %u. (%s)",
|
||||
getheader_rcode(hp),getheader_rcode(hp) < ResponsecodeCount ?
|
||||
responsecodes[getheader_rcode(hp)] : responsecodes[ResponsecodeCount]);
|
||||
restell(tempstring);
|
||||
@@ -1236,13 +1236,13 @@
|
||||
(void *) &(from4->sin_addr), AF_INET ) == 0 )
|
||||
break;
|
||||
if (i == _res.nscount) {
|
||||
- sprintf(tempstring,"Resolver error: Received reply from unknown source: %s",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver error: Received reply from unknown source: %s",
|
||||
inet_ntoa(from4->sin_addr ));
|
||||
restell(tempstring);
|
||||
} else
|
||||
parserespacket((byte *)resrecvbuf,r);
|
||||
} else {
|
||||
- sprintf(tempstring,"Resolver: Socket error: %s",strerror(errno));
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Socket error: %s",strerror(errno));
|
||||
restell(tempstring);
|
||||
}
|
||||
}
|
||||
@@ -1271,7 +1271,7 @@
|
||||
case STATE_FINISHED: /* TTL has expired */
|
||||
case STATE_FAILED: /* Fake TTL has expired */
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Cache record for \"%s\" (%s) has expired. (state: %u) Marked for expire at: %g, time: %g.",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Cache record for \"%s\" (%s) has expired. (state: %u) Marked for expire at: %g, time: %g.",
|
||||
nonull(rp->hostname), strlongip( &(rp->ip) ),
|
||||
rp->state, rp->expiretime, sweeptime);
|
||||
restell(tempstring);
|
||||
@@ -1315,14 +1315,14 @@
|
||||
if ((rp->state == STATE_FINISHED) || (rp->state == STATE_FAILED)) {
|
||||
if ((rp->state == STATE_FINISHED) && (rp->hostname)) {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Used cached record: %s == \"%s\".\n",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Used cached record: %s == \"%s\".\n",
|
||||
strlongip(ip),rp->hostname);
|
||||
restell(tempstring);
|
||||
}
|
||||
return rp->hostname;
|
||||
} else {
|
||||
if (debug) {
|
||||
- sprintf(tempstring,"Resolver: Used failed record: %s == ???\n",
|
||||
+ snprintf(tempstring, sizeof(tempstring), "Resolver: Used failed record: %s == ???\n",
|
||||
strlongip(ip));
|
||||
restell(tempstring);
|
||||
}
|
@ -1,50 +0,0 @@
|
||||
--- mtr-0.69/mtr.c.format 2005-09-05 17:02:01.000000000 +0200
|
||||
+++ mtr-0.69/mtr.c 2005-09-05 17:01:19.000000000 +0200
|
||||
@@ -74,7 +74,7 @@
|
||||
|
||||
|
||||
/* default display field(defined by key in net.h) and order */
|
||||
-unsigned char fld_active[2*MAXFLD] = "LS NABWV";
|
||||
+unsigned char fld_active[2*MAXFLD] = "LNABWV";
|
||||
int fld_index[256];
|
||||
char available_options[MAXFLD];
|
||||
|
||||
--- mtr-0.69/report.c.format 2005-09-05 17:02:07.000000000 +0200
|
||||
+++ mtr-0.69/report.c 2005-09-05 17:02:53.000000000 +0200
|
||||
@@ -58,13 +58,13 @@
|
||||
int len=0;
|
||||
struct hostent *host;
|
||||
|
||||
- sprintf(buf, "HOST: %-33s", LocalHostname);
|
||||
+ sprintf(buf, "%-33s Snt: %-5d", LocalHostname, MaxPing);
|
||||
for( i=0; i<MAXFLD; i++ ) {
|
||||
j = fld_index[fld_active[i]];
|
||||
if (j < 0) continue;
|
||||
|
||||
sprintf( fmt, "%%%ds", data_fields[j].length );
|
||||
- sprintf( buf +33+ len, fmt, data_fields[j].title );
|
||||
+ sprintf( buf +44+ len, fmt, data_fields[j].title );
|
||||
len += data_fields[j].length;
|
||||
}
|
||||
printf("%s\n",buf);
|
||||
@@ -88,17 +88,17 @@
|
||||
}
|
||||
|
||||
len=0;
|
||||
- sprintf( buf, " %2d. %-33s", at+1, name);
|
||||
+ sprintf( buf, "%-49s", name);
|
||||
for( i=0; i<MAXFLD; i++ ) {
|
||||
j = fld_index[fld_active [i]];
|
||||
if (j < 0) continue;
|
||||
|
||||
/* 1000.0 is a temporay hack for stats usec to ms, impacted net_loss. */
|
||||
if( index( data_fields[j].format, 'f' ) ) {
|
||||
- sprintf( buf +33+ len, data_fields[j].format,
|
||||
+ sprintf( buf +44+ len, data_fields[j].format,
|
||||
data_fields[j].net_xxx(at) /1000.0 );
|
||||
} else {
|
||||
- sprintf( buf +33+ len, data_fields[j].format,
|
||||
+ sprintf( buf +44+ len, data_fields[j].format,
|
||||
data_fields[j].net_xxx(at) );
|
||||
}
|
||||
len += data_fields[j].length;
|
@ -1,14 +0,0 @@
|
||||
--- mtr-0.71/net.c.fix 2006-03-24 07:37:17.000000000 +0100
|
||||
+++ mtr-0.71/net.c 2006-05-30 08:52:50.000000000 +0200
|
||||
@@ -354,8 +354,9 @@
|
||||
|
||||
totusec = (now.tv_sec - sequence[seq].time.tv_sec ) * 1000000 +
|
||||
(now.tv_usec - sequence[seq].time.tv_usec);
|
||||
- /* impossible? if( totusec < 0 ) totusec = 0 */;
|
||||
-
|
||||
+ /* sometimes < 0 */
|
||||
+ totusec = abs(totusec);
|
||||
+
|
||||
if ( addrcmp( (void *) &(host[index].addr),
|
||||
(void *) &unspec_addr, af ) == 0 ) {
|
||||
/* should be out of if as addr can change */
|
14
mtr.spec
14
mtr.spec
@ -1,8 +1,8 @@
|
||||
Summary: A network diagnostic tool
|
||||
Name: mtr
|
||||
Version: 0.74
|
||||
Version: 0.75
|
||||
Release: 1%{?dist}
|
||||
Epoch: 2
|
||||
Epoch: 1
|
||||
Group: Applications/Internet
|
||||
License: GPLv2+
|
||||
URL: http://www.BitWizard.nl/mtr
|
||||
@ -10,9 +10,6 @@ Source: ftp://ftp.bitwizard.nl/mtr/%{name}-%{version}.tar.gz
|
||||
Source1: xmtr.consolehelper
|
||||
Source2: xmtr.pam
|
||||
Source3: net-x%{name}.desktop
|
||||
Patch1: mtr-0.69-CVE-2002-0497.patch
|
||||
Patch2: mtr-0.69-format.patch
|
||||
Patch3: mtr-0.71-underflow.patch
|
||||
BuildRequires: ncurses-devel gtk2-devel desktop-file-utils gtk+-devel
|
||||
|
||||
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
@ -35,9 +32,6 @@ diagnostic tool.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1 -b .CVE-2002-0497
|
||||
%patch2 -p1 -b .format
|
||||
%patch3 -p1 -b .underflow
|
||||
|
||||
%build
|
||||
%configure --enable-gtk2
|
||||
@ -88,6 +82,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_datadir}/pixmaps/mtr_icon.xpm
|
||||
|
||||
%changelog
|
||||
* Tue Sep 23 2008 Zdenek Prikryl <zprikryl@redhat.com> - 2:0.75-1
|
||||
- Removed confusing underflow patch
|
||||
- Removed format patch bacause of -w option
|
||||
|
||||
* Thu Sep 09 2008 Zdenek Prikryl <zprikryl@redhat.com> - 2:0.74-1
|
||||
- Updated to 0.74
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user