📄 miniupnpdctl.c
字号:
/* $Id: miniupnpdctl.c,v 1.5 2007/09/24 17:44:25 nanard Exp $ *//* MiniUPnP project * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/ * (c) 2006 Thomas Bernard * This software is subject to the conditions detailed * in the LICENCE file provided within the distribution */#include <stdlib.h>#include <stdio.h>#include <unistd.h>#include <string.h>#include <sys/types.h>#include <sys/socket.h>#include <sys/un.h>#include <signal.h>#if 0static void sighandler(int sig){ printf("received signal %d\n", sig);}#endifintmain(int argc, char * * argv){ /*char test[] = "test!";*/ static const char command[] = "show all\n"; char buf[256]; int l; int s; struct sockaddr_un addr;// signal(SIGINT, sighandler); s = socket(AF_UNIX, SOCK_STREAM, 0); if(s<0) { perror("socket"); return 1; } addr.sun_family = AF_UNIX; strncpy(addr.sun_path, "/var/run/miniupnpd.ctl", sizeof(addr.sun_path)); if(connect(s, (struct sockaddr *)&addr, sizeof(struct sockaddr_un)) < 0) { perror("connect"); close(s); return 1; } printf("Connected.\n"); write(s, command, sizeof(command)); for(;;) { l = read(s, buf, sizeof(buf)); if(l<0) { perror("read"); break; } if(l==0) break; /*printf("%d bytes read\n", l);*/ fflush(stdout); write(0, buf, l); /*printf("\n");*/ } close(s); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -