From 2dffc5cd281bcf69fc9ebcf8865c1d419b33e8bb Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Fri, 28 Nov 2003 23:25:50 +0000 Subject: [PATCH] added syscall_kill* git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/branches/SYSCALL_SWITCH@457 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- util-vserver/lib/Makefile-files | 2 ++ util-vserver/lib/syscall_kill-v11.hc | 32 +++++++++++++++++++++++++++++ util-vserver/lib/syscall_kill.c | 39 ++++++++++++++++++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 util-vserver/lib/syscall_kill-v11.hc create mode 100644 util-vserver/lib/syscall_kill.c diff --git a/util-vserver/lib/Makefile-files b/util-vserver/lib/Makefile-files index 901fea7..cfa9cba 100644 --- a/util-vserver/lib/Makefile-files +++ b/util-vserver/lib/Makefile-files @@ -19,6 +19,7 @@ lib_SRCS = lib/syscall.c \ lib/syscall_rlimit.c \ + lib/syscall_kill.c \ lib/checkversion.c \ lib/getctx.c \ lib/getversion.c \ @@ -29,6 +30,7 @@ lib_HDRS = lib/vserver.h lib_XHDRS = lib/syscall-compat.hc \ lib/syscall-legacy.hc \ lib/syscall_rlimit-v11.hc \ + lib/syscall_kill-v11.hc \ lib/getctx-compat.hc \ lib/getctx-legacy.hc \ lib/getversion-internal.hc \ diff --git a/util-vserver/lib/syscall_kill-v11.hc b/util-vserver/lib/syscall_kill-v11.hc new file mode 100644 index 0000000..a96a3db --- /dev/null +++ b/util-vserver/lib/syscall_kill-v11.hc @@ -0,0 +1,32 @@ +// $Id$ --*- c++ -*-- + +// Copyright (C) 2003 Enrico Scholz +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; version 2 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +#ifdef HAVE_CONFIG_H +# include +#endif + +static inline ALWAYSINLINE int +vc_ctx_kill_v11(ctx_t ctx, pid_t pid, int sig) +{ + struct vcmd_ctx_kill_v0 param = { + .pid = pid, + .sig = sig + }; + + return sys_vserver(VC_CMD(PROCTRL, 1, 0), ctx, ¶m); +} diff --git a/util-vserver/lib/syscall_kill.c b/util-vserver/lib/syscall_kill.c new file mode 100644 index 0000000..32cd73e --- /dev/null +++ b/util-vserver/lib/syscall_kill.c @@ -0,0 +1,39 @@ +// $Id$ --*- c++ -*-- + +// Copyright (C) 2003 Enrico Scholz +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; version 2 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +#ifdef HAVE_CONFIG_H +# include +#endif +#include "compat.h" + +#include "vserver.h" +#include "vserver-internal.h" +#include "linuxvirtual.h" + +#ifdef VC_ENABLE_API_V11 +# include "syscall_kill-v11.hc" +#endif + +int +vc_ctx_kill(ctx_t ctx, pid_t pid, int sig) +{ + CALL_VC(CALL_VC_V11(vc_ctx_kill, ctx, pid, sig)); +} + +#if defined (VC_ENABLE_API_V11) +#endif -- 1.8.1.5