]> git.pld-linux.org Git - packages/slang.git/blame - slang-security.patch
- adapterized, cosmetics
[packages/slang.git] / slang-security.patch
CommitLineData
06061835
AF
1--- slang1.3.5/src/sltermin.c.old Tue Jan 12 06:29:12 1999
2+++ slang1.3.5/src/sltermin.c Wed May 12 17:17:15 1999
3@@ -105,7 +105,31 @@
4 * I will also look into the use of setreuid, seteuid and setregid, setegid.
5 * FIXME: Priority=medium
6 */
7+ /* If your system lacks setfsuid/getfsuid either write
8+ equivalent support or dont use slang to build setuid/setgid
9+ apps like Mutt */
10+
43a51512
AF
11+ if(setfsuid(getuid())==-1)
12+ {
06061835
AF
13+ perror("setfsuid");
14+ return NULL;
43a51512
AF
15+ }
16+ if(setfsgid(getgid())==-1)
17+ {
06061835
AF
18+ perror("setfsgid");
19+ return NULL;
43a51512
AF
20+ }
21 fp = fopen (file, "rb");
22+ if(setfsuid(geteuid())==-1)
23+ {
06061835
AF
24+ perror("setfsuid");
25+ return NULL;
43a51512
AF
26+ }
27+ if(setfsgid(getegid())==-1)
28+ {
06061835
AF
29+ perror("setfsgid");
30+ return NULL;
43a51512
AF
31+ }
32 if (fp == NULL) return NULL;
33
34 if ((12 == fread ((char *) buf, 1, 12, fp) && (MAGIC == make_integer (buf))))
06061835 35@@ -278,7 +302,7 @@
43a51512
AF
36 if ((tidir != NULL)
37 && (sizeof (file) > strlen (tidir) + 2 + strlen (term)))
38 {
39- sprintf (file, "%s/%c/%s", tidir, *term, term);
40+ snprintf (file, sizeof(file), "%s/%c/%s", tidir, *term, term);
41 if (NULL != (fp = open_terminfo (file, ti)))
42 break;
43 }
This page took 0.063655 seconds and 4 git commands to generate.