aboutsummaryrefslogtreecommitdiff
path: root/security/op/files
diff options
context:
space:
mode:
authorGabor Kovesdan <gabor@FreeBSD.org>2007-06-04 15:01:37 +0000
committerGabor Kovesdan <gabor@FreeBSD.org>2007-06-04 15:01:37 +0000
commita5a79ff2eb02a4d87fb1bf524f7336eab2f9fbff (patch)
treea13a57b4e26d656ceb1da7cde0dfe17b5628920c /security/op/files
parentab1e846e494f36f2399bcd78cc94df0190a805d1 (diff)
Notes
Diffstat (limited to 'security/op/files')
-rw-r--r--security/op/files/patch-defs.h9
-rw-r--r--security/op/files/patch-lex.l33
-rw-r--r--security/op/files/patch-main.c100
3 files changed, 0 insertions, 142 deletions
diff --git a/security/op/files/patch-defs.h b/security/op/files/patch-defs.h
deleted file mode 100644
index a953a8d8c372..000000000000
--- a/security/op/files/patch-defs.h
+++ /dev/null
@@ -1,9 +0,0 @@
---- defs.h.orig Sun Nov 23 01:11:52 1997
-+++ defs.h Tue Jan 30 09:45:22 2001
-@@ -19,4 +19,6 @@
- extern cmd_t *First, *Build();
-
- #define MAXSTRLEN 256
-+#ifndef OP_ACCESS
- #define OP_ACCESS "/usr/local/etc/op.access"
-+#endif
diff --git a/security/op/files/patch-lex.l b/security/op/files/patch-lex.l
deleted file mode 100644
index 293eb09be96f..000000000000
--- a/security/op/files/patch-lex.l
+++ /dev/null
@@ -1,33 +0,0 @@
---- lex.l.orig Thu Mar 3 20:47:59 2005
-+++ lex.l Thu Mar 3 20:49:11 2005
-@@ -10,10 +10,11 @@
- /* +-------------------------------------------------------------------+ */
-
- #include <stdio.h>
--#include <varargs.h>
-+#include <stdarg.h>
- #include <ctype.h>
- #include "defs.h"
-
-+static int addarg();
- static cmd_t *newcmd();
- char *savestr();
-
-@@ -47,15 +48,12 @@
- #include <sys/stat.h>
- #include <syslog.h>
-
--msg(va_alist)
-- va_dcl
-+msg (char *s, ...)
- {
- #if 0
- va_list ap;
-- char *s;
-
-- va_start(ap);
-- s = va_arg(ap, char *);
-+ va_start(ap,s);
- fprintf(stderr,"line %d: ",yyline);
- vfprintf(stderr, s, ap);
- fputc('\n', stderr);
diff --git a/security/op/files/patch-main.c b/security/op/files/patch-main.c
deleted file mode 100644
index a7bff8d77e9e..000000000000
--- a/security/op/files/patch-main.c
+++ /dev/null
@@ -1,100 +0,0 @@
---- main.c.orig Mon Dec 22 23:26:47 2003
-+++ main.c Mon Dec 22 23:27:23 2003
-@@ -9,7 +9,7 @@
- /* +-------------------------------------------------------------------+ */
-
- #include <stdio.h>
--#include <varargs.h>
-+#include <stdarg.h>
- #include <syslog.h>
- #include <pwd.h>
- #include <grp.h>
-@@ -51,6 +51,7 @@
- extern char *getpass(), *crypt();
-
- char *Progname;
-+int fatal(char *s, ...);
- char *format_cmd();
- char *GetCode();
- cmd_t *Find();
-@@ -170,14 +171,11 @@
- return Go(new, num, argc, argv);
- }
-
--fatal(va_alist)
-- va_dcl
-+fatal(char *s,...)
- {
- va_list ap;
-- char *s;
-
-- va_start(ap);
-- s = va_arg(ap, char *);
-+ va_start(ap,s);
- vfprintf(stderr, s, ap);
- fputc('\n', stderr);
- va_end(ap);
-@@ -448,35 +446,28 @@
- char *cp, *np;
- struct passwd *pw;
- struct group *gr;
-- int ngroups, gidset[256];
-+ int ngroups = 0, gidset[256];
- int curenv = 0, curarg = 0;
- char *new_envp[MAXENV];
- char *new_argv[MAXARG];
- char str[MAXSTRLEN], buf[4*MAXSTRLEN];
-
-- if ((cp = FindOpt(cmd, "uid")) == NULL) {
-- if (setuid(0) < 0)
-- fatal("Unable to set uid to default", cp);
-- } else {
-- if ((pw = getpwnam(cp)) == NULL) {
-- if (setuid(atoi(cp)) < 0)
-- fatal("Unable to set uid to %s", cp);
-- }
-- if (setuid(pw->pw_uid) < 0)
-- fatal("Unable to set uid to %s", cp);
-- }
--
- if ((cp = FindOpt(cmd, "gid")) == NULL) {
-- ; /* don't have a default */
-+ if (setgid(0) < 0)
-+ fatal("Unable to set gid to default", cp);
- } else {
- for (cp=GetField(cp, str); cp!=NULL; cp=GetField(cp, str)) {
-- if ((gr = getgrnam(cp)) != NULL)
-+ if ((gr = getgrnam(str)) != NULL)
- gidset[ngroups++] = gr->gr_gid;
-+ else
-+ gidset[ngroups++] = atoi(str);
- }
- if (ngroups == 0)
-- fatal("Unable to setgid to any group");
-+ fatal("Unable to set gid to any group");
- if (setgroups(ngroups, gidset) < 0)
-- fatal("Set group failed");
-+ fatal("Unable to set auxiliary groups");
-+ if (setgid(gidset[0]) < 0)
-+ fatal("Unable to set gid to %s", gidset[0]);
- }
-
- if ((cp = FindOpt(cmd, "umask")) == NULL) {
-@@ -533,6 +524,17 @@
- new_envp[curenv++] = environ[i];
- }
- new_envp[curenv] = NULL;
-+
-+ if ((cp = FindOpt(cmd, "uid")) == NULL) {
-+ if (setuid(0) < 0)
-+ fatal("Unable to set uid to default", cp);
-+ } else {
-+ if ((pw = getpwnam(cp)) == NULL) {
-+ if (setuid(atoi(cp)) < 0)
-+ fatal("Unable to set uid to %s", cp);
-+ } else if (setuid(pw->pw_uid) < 0)
-+ fatal("Unable to set uid to %s", cp);
-+ }
-
- if (strcmp("MAGIC_SHELL", cmd->args[0]) == 0) {
- for (i = 0; environ[i] != NULL; i++)