Warner Losh <[EMAIL PROTECTED]> writes:
> Or getservbyname (which is really what you'd want to change). I have
> patches to inetd that I've enclosed here. They are gorss, but the
> code itself doesn't lend itself to non-gross patches w/o some rework,
> which I was too lazy to do this morning.
Or you might as well fix it for RPCs at the same time.
/assar
--- inetd.c.orig Mon Aug 2 22:35:28 1999
+++ inetd.c Mon Aug 2 22:41:52 1999
@@ -830,34 +830,50 @@
continue;
}
if (!sep->se_rpc) {
+ int port;
+
sp = getservbyname(sep->se_service, sep->se_proto);
if (sp == 0) {
- syslog(LOG_ERR, "%s/%s: unknown service",
+ port = htons(strtol (sep->se_service,
+ NULL, 0));
+ if (port == 0) {
+ syslog(LOG_ERR,
+ "%s/%s: unknown service",
sep->se_service, sep->se_proto);
sep->se_checked = 0;
continue;
}
- if (sp->s_port != sep->se_ctrladdr.sin_port) {
+ } else
+ port = sp->s_port;
+ if (port != sep->se_ctrladdr.sin_port) {
sep->se_ctrladdr.sin_family = AF_INET;
sep->se_ctrladdr.sin_addr = bind_address;
- sep->se_ctrladdr.sin_port = sp->s_port;
+ sep->se_ctrladdr.sin_port = port;
if (sep->se_fd >= 0)
close_sep(sep);
}
} else {
+ int rpc_number;
+
rpc = getrpcbyname(sep->se_service);
if (rpc == 0) {
- syslog(LOG_ERR, "%s/%s unknown RPC service.",
+ rpc_number = strtol (sep->se_service,
+ NULL, 0);
+ if (rpc_number == 0) {
+ syslog(LOG_ERR,
+ "%s/%s unknown RPC service.",
sep->se_service, sep->se_proto);
if (sep->se_fd != -1)
(void) close(sep->se_fd);
sep->se_fd = -1;
continue;
}
- if (rpc->r_number != sep->se_rpc_prog) {
+ } else
+ rpc_number = sep->se_rpc_prog;
+ if (rpc_number != sep->se_rpc_prog) {
if (sep->se_rpc_prog)
unregisterrpc(sep);
- sep->se_rpc_prog = rpc->r_number;
+ sep->se_rpc_prog = rpc_number;
if (sep->se_fd != -1)
(void) close(sep->se_fd);
sep->se_fd = -1;
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message
- Re: Mentioning RFC numbers i... Doug
- Re: Mentioning RFC numbers i... Sheldon Hearn
- Re: Mentioning RFC numbers i... Warner Losh
- Re: Mentioning RFC numbers in /etc/services Daniel Eischen
- Re: Mentioning RFC numbers in /etc/services Dag-Erling Smorgrav
- Re: Mentioning RFC numbers in /etc/services Warner Losh
- Re: Mentioning RFC numbers in /etc/services Bill Fumerola
- Re: Mentioning RFC numbers in /etc/servic... Warner Losh
- Re: Mentioning RFC numbers in /etc/se... Bill Fumerola
- Re: Mentioning RFC numbers in /e... Warner Losh
- Re: Mentioning RFC numbers i... Assar Westerlund
- Re: Mentioning RFC numbers i... Brian Somers
- Re: Mentioning RFC numbers i... David Scheidt
- Re: Mentioning RFC numbers i... Warner Losh
- Re: Mentioning RFC numbers i... Brian Somers
- Re: Mentioning RFC numbers i... Warner Losh
- Re: Mentioning RFC numbers in /etc/services Daniel Eischen
- Re: Mentioning RFC numbers in /etc/services Sheldon Hearn
- Re: Mentioning RFC numbers in /etc/services Daniel Eischen
- Re: Mentioning RFC numbers in /etc/services Warner Losh
- Re: Mentioning RFC numbers in /etc/services Brian Somers

