public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo commit in src/patchsets/netkit-rsh: 230_all_MAX_ARG.patch
@ 2008-06-16 21:06 Mike Frysinger (vapier)
  0 siblings, 0 replies; 2+ messages in thread
From: Mike Frysinger (vapier) @ 2008-06-16 21:06 UTC (permalink / raw
  To: gentoo-commits

vapier      08/06/16 21:06:47

  Added:                230_all_MAX_ARG.patch
  Log:
  fix building when ARG_MAX is missing #225341

Revision  Changes    Path
1.1                  src/patchsets/netkit-rsh/230_all_MAX_ARG.patch

file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch?rev=1.1&content-type=text/plain

Index: 230_all_MAX_ARG.patch
===================================================================
fix building when ARG_MAX is not defined

patch by Tom-Steve Watzke

http://bugs.gentoo.org/225341

--- netkit-rsh-0.17/rexecd/rexecd.c
+++ netkit-rsh-0.17/rexecd/rexecd.c
@@ -234,7 +234,8 @@
 static void
 doit(struct sockaddr_in *fromp)
 {
-	char cmdbuf[ARG_MAX+1];
+	char *cmdbuf;
+	int cmdbuflen;
 	char user[16], pass[16];
 	struct passwd *pwd;
 	int s = -1;
@@ -253,6 +254,15 @@
 #endif
 #endif /* USE_PAM */
 
+	cmdbuflen = sysconf(_SC_ARG_MAX);
+	if (cmdbuflen < _POSIX_ARG_MAX)
+		cmdbuflen = _POSIX_ARG_MAX;
+	cmdbuf = malloc(cmdbuflen);
+	if (cmdbuf == NULL) {
+		syslog(LOG_ERR, "unable to malloc(%i) for command buffer: %s", cmdbuflen, strerror(errno));
+		fatal("out of memory\n");
+	}
+
 	signal(SIGINT, SIG_DFL);
 	signal(SIGQUIT, SIG_DFL);
 	signal(SIGTERM, SIG_DFL);
@@ -302,7 +312,7 @@
 
 	getstr(user, sizeof(user), "username too long\n");
 	getstr(pass, sizeof(pass), "password too long\n");
-	getstr(cmdbuf, sizeof(cmdbuf), "command too long\n");
+	getstr(cmdbuf, cmdbuflen, "command too long\n");
 #ifdef USE_PAM
        #define PAM_BAIL if (pam_error != PAM_SUCCESS) { \
 	       pam_end(pamh, pam_error); exit(1); \
--- netkit-rsh-0.17/rshd/rshd.c
+++ netkit-rsh-0.17/rshd/rshd.c
@@ -337,7 +337,8 @@
 static void
 doit(struct sockaddr_in *fromp)
 {
-	char cmdbuf[ARG_MAX+1];
+	char *cmdbuf;
+	int cmdbuflen;
 	const char *theshell, *shellname;
 	char locuser[16], remuser[16];
 	struct passwd *pwd;
@@ -346,6 +347,15 @@
 	u_short port;
 	int pv[2], pid, ifd;
 
+	cmdbuflen = sysconf(_SC_ARG_MAX);
+	if (cmdbuflen < _POSIX_ARG_MAX)
+		cmdbuflen = _POSIX_ARG_MAX;
+	cmdbuf = malloc(cmdbuflen);
+	if (cmdbuf == NULL) {
+		syslog(LOG_ERR, "unable to malloc(%i) for command buffer: %s", cmdbuflen, strerror(errno));
+		exit(1);
+	}
+
 	signal(SIGINT, SIG_DFL);
 	signal(SIGQUIT, SIG_DFL);
 	signal(SIGTERM, SIG_DFL);
@@ -382,7 +392,7 @@
 
 	getstr(remuser, sizeof(remuser), "remuser");
 	getstr(locuser, sizeof(locuser), "locuser");
-	getstr(cmdbuf, sizeof(cmdbuf), "command");
+	getstr(cmdbuf, cmdbuflen, "command");
 	if (!strcmp(locuser, "root")) paranoid = 1;
 
 	hostname = findhostname(fromp, remuser, locuser, cmdbuf);



-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 2+ messages in thread

* [gentoo-commits] gentoo commit in src/patchsets/netkit-rsh: 230_all_MAX_ARG.patch
@ 2012-02-28 11:18 Naohiro Aota (naota)
  0 siblings, 0 replies; 2+ messages in thread
From: Naohiro Aota (naota) @ 2012-02-28 11:18 UTC (permalink / raw
  To: gentoo-commits

naota       12/02/28 11:18:10

  Modified:             230_all_MAX_ARG.patch
  Log:
  Include limits.h

Revision  Changes    Path
1.2                  src/patchsets/netkit-rsh/230_all_MAX_ARG.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch?rev=1.2&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch?rev=1.2&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch?r1=1.1&r2=1.2

Index: 230_all_MAX_ARG.patch
===================================================================
RCS file: /var/cvsroot/gentoo/src/patchsets/netkit-rsh/230_all_MAX_ARG.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 230_all_MAX_ARG.patch	16 Jun 2008 21:06:46 -0000	1.1
+++ 230_all_MAX_ARG.patch	28 Feb 2012 11:18:10 -0000	1.2
@@ -6,7 +6,15 @@
 
 --- netkit-rsh-0.17/rexecd/rexecd.c
 +++ netkit-rsh-0.17/rexecd/rexecd.c
-@@ -234,7 +234,8 @@
+@@ -85,6 +85,7 @@ char rcsid[] =
+ #include <paths.h>
+ #include <grp.h>
+ #include <arpa/inet.h>
++#include <limits.h>
+   
+   
+ #ifdef USE_SHADOW
+@@ -233,7 +234,8 @@ static struct pam_conv PAM_conversation = {
  static void
  doit(struct sockaddr_in *fromp)
  {
@@ -16,7 +24,7 @@
  	char user[16], pass[16];
  	struct passwd *pwd;
  	int s = -1;
-@@ -253,6 +254,15 @@
+@@ -252,6 +254,15 @@ doit(struct sockaddr_in *fromp)
  #endif
  #endif /* USE_PAM */
  
@@ -32,7 +40,7 @@
  	signal(SIGINT, SIG_DFL);
  	signal(SIGQUIT, SIG_DFL);
  	signal(SIGTERM, SIG_DFL);
-@@ -302,7 +312,7 @@
+@@ -301,7 +312,7 @@ doit(struct sockaddr_in *fromp)
  
  	getstr(user, sizeof(user), "username too long\n");
  	getstr(pass, sizeof(pass), "password too long\n");
@@ -43,7 +51,15 @@
  	       pam_end(pamh, pam_error); exit(1); \
 --- netkit-rsh-0.17/rshd/rshd.c
 +++ netkit-rsh-0.17/rshd/rshd.c
-@@ -337,7 +337,8 @@
+@@ -79,6 +79,7 @@ char rcsid[] =
+ #include <stdarg.h>
+ #include <ctype.h>
+ #include <assert.h>
++#include <limits.h>
+ 
+ #if !(defined(__GLIBC__) && (__GLIBC__ < 2))
+ #define _check_rhosts_file  __check_rhosts_file
+@@ -337,7 +338,8 @@ static const char *findhostname(struct sockaddr_in *fromp,
  static void
  doit(struct sockaddr_in *fromp)
  {
@@ -53,7 +69,7 @@
  	const char *theshell, *shellname;
  	char locuser[16], remuser[16];
  	struct passwd *pwd;
-@@ -346,6 +347,15 @@
+@@ -346,6 +348,15 @@ doit(struct sockaddr_in *fromp)
  	u_short port;
  	int pv[2], pid, ifd;
  
@@ -69,7 +85,7 @@
  	signal(SIGINT, SIG_DFL);
  	signal(SIGQUIT, SIG_DFL);
  	signal(SIGTERM, SIG_DFL);
-@@ -382,7 +392,7 @@
+@@ -382,7 +393,7 @@ doit(struct sockaddr_in *fromp)
  
  	getstr(remuser, sizeof(remuser), "remuser");
  	getstr(locuser, sizeof(locuser), "locuser");






^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-02-28 11:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-16 21:06 [gentoo-commits] gentoo commit in src/patchsets/netkit-rsh: 230_all_MAX_ARG.patch Mike Frysinger (vapier)
  -- strict thread matches above, loose matches on Subject: below --
2012-02-28 11:18 Naohiro Aota (naota)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox