git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@1107 c5f82cb5-29bc-0310-9cd0-bff59a50e3bcrocklinux
@ -0,0 +1,69 @@ |
|||
|
|||
The dietlibc getcwd function does not (yet) support the GNU extension to |
|||
allocate the string on-the-fly. So we use some sub-optimal aolution and |
|||
additional checks. WAIT_ANY should also be added to the dietlibc ... |
|||
|
|||
Rene Rebe <rene@rocklinux.org> |
|||
|
|||
diff -ur kiss-0.21/src/getprompt.c src.kiss.-1.25906.3396530713/kiss-0.21/src/getprompt.c
|
|||
--- kiss-0.21/getprompt.c 1998-09-25 14:07:10.000000000 +0200
|
|||
+++ kiss-0.21/getprompt.c 2003-08-18 02:12:51.000000000 +0200
|
|||
@@ -3,14 +3,14 @@
|
|||
char *getprompt () |
|||
{ |
|||
register char |
|||
- *prompt,
|
|||
- *cwd;
|
|||
+ *prompt;
|
|||
static char |
|||
- buf [LINELEN];
|
|||
+ buf [LINELEN],
|
|||
+ cwd [LINELEN];
|
|||
char |
|||
twobuf [2] = { 0, 0 }; |
|||
|
|||
- cwd = getcwd (NULL, 0);
|
|||
+ getcwd (cwd, LINELEN);
|
|||
if (! flags.noenviron) |
|||
addtoenv ("PWD", cwd); |
|||
|
|||
@@ -33,22 +33,22 @@
|
|||
strcat (buf, username); |
|||
break; |
|||
case 'p': |
|||
- strcat (buf, cwd);
|
|||
+ if (cwd)
|
|||
+ strcat (buf, cwd);
|
|||
break; |
|||
default: |
|||
- twobuf [0] = *prompt;
|
|||
- strcat (buf, twobuf);
|
|||
+ strcat (buf, prompt);
|
|||
} |
|||
} |
|||
else |
|||
{ |
|||
- twobuf [0] = *prompt;
|
|||
+ twobuf [0] = *prompt;
|
|||
strcat (buf, twobuf); |
|||
} |
|||
prompt++; |
|||
} |
|||
|
|||
- free (cwd);
|
|||
+ /*free (cwd);*/
|
|||
|
|||
return (buf); |
|||
} |
|||
diff -ur kiss-0.21/src/waitforchild.c src.kiss.-1.25906.3396530713/kiss-0.21/src/waitforchild.c
|
|||
--- kiss-0.21/waitforchild.c 1998-09-25 14:07:10.000000000 +0200
|
|||
+++ kiss-0.21/waitforchild.c 2003-08-17 23:16:10.000000000 +0200
|
|||
@@ -31,7 +31,7 @@
|
|||
reportstatus (childname, status, background); |
|||
|
|||
/* let's see how generic kids are doing */ |
|||
- while ( (pid = waitpid (WAIT_ANY, &status, WNOHANG)) > 0 )
|
|||
+ while ( (pid = waitpid (-1, &status, WNOHANG)) > 0 )
|
|||
{ |
|||
sprintf (buf, "pid %d", pid); |
|||
reportstatus (buf, status, 1); |
@ -0,0 +1,33 @@ |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/package/base/kiss/kiss.conf |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
|
|||
--- ./doprintenv.c.old Fri Oct 24 20:39:28 1997
|
|||
+++ ./doprintenv.c Tue May 26 09:49:34 1998
|
|||
@@ -1,5 +1,7 @@
|
|||
#include "kiss.h" |
|||
|
|||
+extern char ** environ;
|
|||
+
|
|||
int doprintenv (Stringstack s) |
|||
{ |
|||
register int |
|||
|
@ -0,0 +1,34 @@ |
|||
|
|||
This is mainly needed when used with dietlibc - but also more portable |
|||
and more secure. |
|||
|
|||
Rene Rebe <rene@rocklinux.org> |
|||
|
|||
diff -ur kiss-0.21/src/doread.c src.kiss.-1.25906.3396530713/kiss-0.21/src/doread.c
|
|||
--- kiss-0.21/doread.c 1998-09-25 14:07:09.000000000 +0200
|
|||
+++ kiss-0.21/doread.c 2003-08-17 23:54:10.000000000 +0200
|
|||
@@ -17,11 +17,11 @@
|
|||
for (cp = s.str [1]; *cp; cp++) |
|||
if (! isupper (*cp)) |
|||
return (warning ("variable must be in upper case")); |
|||
- gets (buf);
|
|||
+ fgets (buf, FILENAMELEN, stdin);
|
|||
addtoenv (s.str [1], buf); |
|||
} |
|||
else |
|||
- gets (buf);
|
|||
+ fgets (buf, FILENAMELEN, stdin);
|
|||
|
|||
return (0); |
|||
} |
|||
diff -ur kiss-0.21/src/runcmd.c src.kiss.-1.25906.3396530713/kiss-0.21/src/runcmd.c
|
|||
--- kiss-0.21/runcmd.c 1998-09-25 14:07:10.000000000 +0200
|
|||
+++ kiss-0.21/runcmd.c 2003-08-17 23:11:35.000000000 +0200
|
|||
@@ -1,5 +1,7 @@
|
|||
#include "kiss.h" |
|||
|
|||
+#include <getopt.h>
|
|||
+
|
|||
/* define DEBUG_ONE_CMD to get one shot at gdb'ing the child process */ |
|||
/* then make a -g version of the command to see and set a trace in the code */ |
|||
|