Пример #1
0
void serverlist_connect() {
    static char cmd[100];
    int i;
    for (i = 1; i < cmd_argc(); i++) {
        char *string = cmd_argv(i);
        int id = atoi(string);
        if (string[0] && id >= 0 && id < server_count) {
            sprintf(cmd, "connect %s %d", serverlist[id].address, serverlist[id].port);
            cmd_execute(cmd_client(), cmd);
        } else {
            ui_output(cmd_client(), "Invalid id: %d.\n", id);
        }
    }
}
Пример #2
0
int main(int argc, char *argv[])
{
    if ((argc < 3) || (strcmp(argv[1], "--help") == 0))
        help();

    f = open("/dev/rtnet", O_RDWR);

    if (f < 0) {
        perror("/dev/rtnet");
        exit(1);
    }

    memset(&cmd, 0, sizeof(cmd));
    strncpy(cmd.head.if_name, argv[1], IFNAMSIZ);

    if (strcmp(argv[2], "server") == 0)
        cmd_server(argc, argv);
    if (strcmp(argv[2], "add") == 0)
        cmd_add(argc, argv);
    if (strcmp(argv[2], "del") == 0)
        cmd_del(argc, argv);
    if (strcmp(argv[2], "wait") == 0)
        cmd_wait(argc, argv);

    if (strcmp(argv[2], "client") == 0)
        cmd_client(argc, argv);
    if (strcmp(argv[2], "announce") == 0)
        cmd_announce(argc, argv);

    help();

    return 0;
}
Пример #3
0
int	req_list(t_cmd *c, t_req *r)
{
  if (DEBUG)
    printf("req_list()\n");
  cmd_server(c, r);
  cmd_client(c, r);
  return (0);
}
Пример #4
0
void serverlist_query() {
    output_client = cmd_client();
    strcpy(filter, cmd_argv(1));
    int i;
    for (i = 0; i < server_count; i++) {
        serverlist[i].received = qfalse;
        serverlist[i].ping_retries = MAX_PING_RETRIES + 1;
        ping_server(serverlist + i);
    }

    master_t *master;
    for (master = masters; master->address; master++) {
        msg_t *msg = sock_init_send(&master->sock, qfalse);
        write_string(msg, "getservers %s %d full empty", GAME, PROTOCOL);
        sock_send(&master->sock);
    }
}
Пример #5
0
void
process_user_commands()
{
    command_client_t cmd_client(client);

    char        line_buf[256];
    char*       line;
    bool	quit = false;

    cout << "Client ready." << endl;
    while(!quit) {
	cout << "client> " << flush;
	line = fgets(line_buf, sizeof(line_buf)-1, stdin);
	if (line == 0) {
	    // end of file
	    break;
	}
	cmd_client.parse_command(line_buf, quit);
    }
}