Esempio n. 1
0
int main (int argc, char **argv) {
    /* windows socket 启动程序 */
    int status;
    WSADATA wsd;
    if((status=WSAStartup(MAKEWORD(2,2),&wsd))!=0)
    {
        perror( "wsastartup()   failed: ");
        exit(1);
    }
    
    char site[LEN_16] = {0};
    site_info site_info;
    int resolve_flag;

    /* 输入site */
    printf("请输入登陆异常的游戏site(eg. 37wan_0001): ");
    scanf("%s", site);

    /* site相关信息 */
    if (!(site_info = collect_info(site))) {
        printf("site信息查询失败,请检查\n");
        exit(1);
    }

    /* 域名解析 */
    if ((resolve_flag = check_resolve(site_info))) {
        printf("游戏登陆所需的3个域名中有部分解析有问题,请检查\n");
    }

    /* ping值计算 */
    check_ping(site_info);
    
    /* windows socket 关闭程序 */
    WSACleanup();
    
    return 0;
}
Esempio n. 2
0
int main(int argc, char *argv[])
{
	int err;
	char *buf[2];
	struct sockaddr_storage address;

	if (argc == 1) { /* automated tests */
		check_ipv4();
		check_ipv6();
		check_resolve();
		exit(EXIT_SUCCESS);
	} else if (argc != 3) {
		printf("usage: %s [host] [port]\n", argv[0]);
		exit(EXIT_SUCCESS);
	}

	err = strtoaddr(argv[1], argv[2], (struct sockaddr *) &address,
					sizeof(struct sockaddr_storage));

	if (err != 0) {
		printf("Unable to convert strings to sockaddr\n");
		exit(EXIT_FAILURE);
	}

	err = addrtostr((struct sockaddr *) &address,
			sizeof(struct sockaddr_storage), buf);

	if (err != 0) {
		printf("Unable to convert sockaddr to strings\n");
		exit(EXIT_FAILURE);
	}

	printf("host: %s port: %s\n", buf[0], buf[1]);
	addrtostr_free(buf);

	return 0;
}