Author: iratqq
Date: Wed Feb  4 05:49:35 2009
New Revision: 5815

Modified:
   trunk/uim/socket.c

Log:
* uim/socket.c (c_getpeereid):
  - New function.
  (uim_plugin_instance_init):
  - New function (getpeereid).


Modified: trunk/uim/socket.c
==============================================================================
--- trunk/uim/socket.c  (original)
+++ trunk/uim/socket.c  Wed Feb  4 05:49:35 2009
@@ -349,6 +349,17 @@
   return MAKE_INT(SUN_LEN(sun));
 }

+static uim_lisp
+c_getpeereid(uim_lisp s_)
+{
+  uid_t euid;
+  gid_t egid;
+
+  if (getpeereid(C_INT(s_), &euid, &egid) == -1)
+    return uim_scm_f();
+  return CONS(MAKE_INT(euid), MAKE_INT(egid));
+}
+
 void
 uim_plugin_instance_init(void)
 {
@@ -399,6 +410,8 @@
   uim_scm_init_proc3("connect", c_connect);
   uim_scm_init_proc3("bind", c_bind);
   uim_scm_init_proc2("listen", c_listen);
+
+  uim_scm_init_proc1("getpeereid", c_getpeereid);
 }

 void

Reply via email to