FreeBSD Bugzilla – Attachment 8269 Details for
Bug 17384
patch for lpd to add -p option to disable internet sockets
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
file.diff
file.diff (text/plain), 3.74 KB, created by
Niels.Endres
on 2000-03-15 05:30:02 UTC
(
hide
)
Description:
file.diff
Filename:
MIME Type:
Creator:
Niels.Endres
Created:
2000-03-15 05:30:02 UTC
Size:
3.74 KB
patch
obsolete
>*** lpd.c.orig Wed Mar 15 15:36:00 2000 >--- lpd.c Wed Mar 15 15:43:22 2000 >*************** >*** 104,109 **** >--- 104,110 ---- > #include "extern.h" > > int lflag; /* log requests flag */ >+ int pflag; /* no incoming port flag */ > int from_remote; /* from remote socket */ > > int main __P((int, char **)); >*************** >*** 136,141 **** >--- 137,143 ---- > euid = geteuid(); /* these shouldn't be different */ > uid = getuid(); > options = 0; >+ pflag = 0; > gethostname(host, sizeof(host)); > > name = "lpd"; >*************** >*** 144,150 **** > errx(EX_NOPERM,"must run as root"); > > errs = 0; >! while ((i = getopt(argc, argv, "dl")) != -1) > switch (i) { > case 'd': > options |= SO_DEBUG; >--- 146,152 ---- > errx(EX_NOPERM,"must run as root"); > > errs = 0; >! while ((i = getopt(argc, argv, "dlp")) != -1) > switch (i) { > case 'd': > options |= SO_DEBUG; >*************** >*** 152,157 **** >--- 154,163 ---- > case 'l': > lflag++; > break; >+ >+ case 'p': >+ pflag++; >+ break; > default: > errs++; > } >*************** >*** 278,299 **** > FD_ZERO(&defreadfds); > FD_SET(funix, &defreadfds); > listen(funix, 5); >! finet = socket(AF_INET, SOCK_STREAM, 0); >! if (finet >= 0) { >! if (options & SO_DEBUG) >! if (setsockopt(finet, SOL_SOCKET, SO_DEBUG, 0, 0) < 0) { >! syslog(LOG_ERR, "setsockopt (SO_DEBUG): %m"); > mcleanup(0); > } >! memset(&sin, 0, sizeof(sin)); >! sin.sin_family = AF_INET; >! sin.sin_port = sp->s_port; >! if (bind(finet, (struct sockaddr *)&sin, sizeof(sin)) < 0) { >! syslog(LOG_ERR, "bind: %m"); >! mcleanup(0); > } >- FD_SET(finet, &defreadfds); >- listen(finet, 5); > } > /* > * Main loop: accept, do a request, continue. >--- 284,310 ---- > FD_ZERO(&defreadfds); > FD_SET(funix, &defreadfds); > listen(funix, 5); >! if (pflag == 0) { >! finet = socket(AF_INET, SOCK_STREAM, 0); >! if (finet >= 0) { >! if (options & SO_DEBUG) >! if (setsockopt(finet, SOL_SOCKET, >! SO_DEBUG, 0, 0) < 0) { >! syslog(LOG_ERR, "setsockopt >! (SO_DEBUG): %m"); >! mcleanup(0); >! } >! memset(&sin, 0, sizeof(sin)); >! sin.sin_family = AF_INET; >! sin.sin_port = sp->s_port; >! if (bind(finet, (struct sockaddr *)&sin, >! sizeof(sin)) < 0) { >! syslog(LOG_ERR, "bind: %m"); > mcleanup(0); > } >! FD_SET(finet, &defreadfds); >! listen(finet, 5); > } > } > /* > * Main loop: accept, do a request, continue. >*************** >*** 318,324 **** > domain = AF_UNIX, fromlen = sizeof(fromunix); > s = accept(funix, > (struct sockaddr *)&fromunix, &fromlen); >! } else /* if (FD_ISSET(finet, &readfds)) */ { > domain = AF_INET, fromlen = sizeof(frominet); > s = accept(finet, > (struct sockaddr *)&frominet, &fromlen); >--- 329,335 ---- > domain = AF_UNIX, fromlen = sizeof(fromunix); > s = accept(funix, > (struct sockaddr *)&fromunix, &fromlen); >! } else if (pflag == 0) /* if (FD_ISSET(finet, &readfds)) */ { > domain = AF_INET, fromlen = sizeof(frominet); > s = accept(finet, > (struct sockaddr *)&frominet, &fromlen); >*************** >*** 339,345 **** > signal(SIGQUIT, SIG_IGN); > signal(SIGTERM, SIG_IGN); > (void) close(funix); >! (void) close(finet); > dup2(s, 1); > (void) close(s); > if (domain == AF_INET) { >--- 350,358 ---- > signal(SIGQUIT, SIG_IGN); > signal(SIGTERM, SIG_IGN); > (void) close(funix); >! if (pflag == 0) { >! (void) close(finet); >! } > dup2(s, 1); > (void) close(s); > if (domain == AF_INET) { >*************** >*** 629,634 **** > static void > usage() > { >! fprintf(stderr, "usage: lpd [-dl] [port#]\n"); > exit(EX_USAGE); > } >--- 642,647 ---- > static void > usage() > { >! fprintf(stderr, "usage: lpd [-dlp] [port#]\n"); > exit(EX_USAGE); > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 17384
: 8269 |
8270