/* Command line tool to control trli-sessiond */ #include #include #include #include #include #include #include "fdpass.h" using namespace std; #include "proto/trli-sessiond_control.protoch" int main (int argc, char *argv[]) { glocal int ret = -1; glocal const char *control = "/var/run/trli-sessiond.sock"; glocal.ret = (argc,argv); setproginfo ("trli-sessiond-control",VERSION ,"Command line tool to control trli-sessiond\n" "\n" "\tdebug 0/1\n" "\tdebugfile filename\n" "\teraseold nbseconds anonymous normaluser adminuser\n" "\tlistsessions offset nb\n" "\tstuffsessions nb\n" "\tquit\n" "\tstatus\n" ); setarg ('p',"control","Unix socket to reach trlid",glocal.control,false); int ret = -1; CONNECT_INFO con; con.port = glocal.control; if (strcmp(argv[0],"status")==0 && argc==1){ (con); for (auto x:lines) printf ("%s\n",x); }else if (strcmp(argv[0],"quit")==0 && argc==1){ (con); }else if (strcmp(argv[0],"listsessions")==0 && argc==3){ (con,atoi(argv[1]),atoi(argv[2])); for (auto x:lines) printf ("%s\n",x); }else if (strcmp(argv[0],"stuffsessions")==0 && argc==2){ (con,atoi(argv[1])); printf ("total=%u\n",total); }else if (strcmp(argv[0],"eraseold")==0 && argc==5){ (con,atoi(argv[1]),atoi(argv[2]),atoi(argv[3]),atoi(argv[4])); printf ("deletedanon=%u deleteduser=%u deletedadmin=%u\n",deletedanon,deleteduser,deletedadmin); }else if (strcmp(argv[0],"debug")==0 && argc==2){ (con,atoi(argv[1])); }else if (strcmp(argv[0],"debugfile")==0 && argc==2){ (con,argv[1]); }else{ tlmp_error ("Invalid command: %s\n",argv[0]); usage(); } return ret; return glocal.ret; }