pkg://FreeWnn-1.11-20.src.rpm:2897071/FreeWnn-nosbit.patch
info downloads
--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c.orig Tue Aug 14 14:26:59 2001
+++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c Tue Aug 14 14:49:12 2001
@@ -47,6 +47,7 @@
extern int errno; /* Pure BSD */
#include <sys/ioctl.h>
+#include <pwd.h>
#if defined(HAVE_SYS_TYPES_H)
#include <sys/types.h>
@@ -196,6 +197,7 @@
char *cswidth_name;
extern char *get_cswidth_name ();
extern void set_cswidth ();
+ struct passwd *pwent;
char nlspath[64];
@@ -213,8 +215,18 @@
port = -1;
- setregid(getegid(), getegid());
- setreuid(geteuid(), geteuid());
+ pwent = getpwnam("wnn");
+ if (pwent) {
+ if(setregid(pwent->pw_gid, pwent->pw_gid)) {
+ setregid(getegid(), getegid());
+ }
+ if(setreuid(pwent->pw_uid, pwent->pw_uid)) {
+ setreuid(geteuid(), geteuid());
+ }
+ } else {
+ setregid(getegid(), getegid());
+ setreuid(geteuid(), geteuid());
+ }
/* check whether another jserver already exists. */
get_options (argc, argv);