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