Home | History | Annotate | Line # | Download | only in dist
cmd-kill-server.c revision 1.1.1.2.18.1
      1  1.1.1.2.18.1   tls /* Id */
      2           1.1  jmmv 
      3           1.1  jmmv /*
      4           1.1  jmmv  * Copyright (c) 2007 Nicholas Marriott <nicm (at) users.sourceforge.net>
      5           1.1  jmmv  *
      6           1.1  jmmv  * Permission to use, copy, modify, and distribute this software for any
      7           1.1  jmmv  * purpose with or without fee is hereby granted, provided that the above
      8           1.1  jmmv  * copyright notice and this permission notice appear in all copies.
      9           1.1  jmmv  *
     10           1.1  jmmv  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
     11           1.1  jmmv  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     12           1.1  jmmv  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
     13           1.1  jmmv  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     14           1.1  jmmv  * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
     15           1.1  jmmv  * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
     16           1.1  jmmv  * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     17           1.1  jmmv  */
     18           1.1  jmmv 
     19           1.1  jmmv #include <sys/types.h>
     20           1.1  jmmv 
     21           1.1  jmmv #include <signal.h>
     22           1.1  jmmv #include <unistd.h>
     23           1.1  jmmv 
     24           1.1  jmmv #include "tmux.h"
     25           1.1  jmmv 
     26           1.1  jmmv /*
     27           1.1  jmmv  * Kill the server and do nothing else.
     28           1.1  jmmv  */
     29           1.1  jmmv 
     30  1.1.1.2.18.1   tls enum cmd_retval	 cmd_kill_server_exec(struct cmd *, struct cmd_q *);
     31           1.1  jmmv 
     32           1.1  jmmv const struct cmd_entry cmd_kill_server_entry = {
     33           1.1  jmmv 	"kill-server", NULL,
     34       1.1.1.2  jmmv 	"", 0, 0,
     35           1.1  jmmv 	"",
     36       1.1.1.2  jmmv 	0,
     37           1.1  jmmv 	NULL,
     38  1.1.1.2.18.1   tls 	cmd_kill_server_exec
     39  1.1.1.2.18.1   tls };
     40  1.1.1.2.18.1   tls 
     41  1.1.1.2.18.1   tls const struct cmd_entry cmd_start_server_entry = {
     42  1.1.1.2.18.1   tls 	"start-server", "start",
     43  1.1.1.2.18.1   tls 	"", 0, 0,
     44  1.1.1.2.18.1   tls 	"",
     45  1.1.1.2.18.1   tls 	CMD_STARTSERVER,
     46           1.1  jmmv 	NULL,
     47       1.1.1.2  jmmv 	cmd_kill_server_exec
     48           1.1  jmmv };
     49           1.1  jmmv 
     50  1.1.1.2.18.1   tls enum cmd_retval
     51  1.1.1.2.18.1   tls cmd_kill_server_exec(struct cmd *self, unused struct cmd_q *cmdq)
     52           1.1  jmmv {
     53  1.1.1.2.18.1   tls 	if (self->entry == &cmd_kill_server_entry)
     54  1.1.1.2.18.1   tls 		kill(getpid(), SIGTERM);
     55           1.1  jmmv 
     56  1.1.1.2.18.1   tls 	return (CMD_RETURN_NORMAL);
     57           1.1  jmmv }
     58