Esempio n. 1
0
int CAimProto::OnModulesLoaded(WPARAM wParam, LPARAM lParam)
{
	HookProtoEvent(ME_USERINFO_INITIALISE,      &CAimProto::OnUserInfoInit);
	HookProtoEvent(ME_IDLE_CHANGED,             &CAimProto::OnIdleChanged);
	HookProtoEvent(ME_MSG_WINDOWEVENT,          &CAimProto::OnWindowEvent);

	chat_register();
	InitContactMenus();

	return 0;
}
Esempio n. 2
0
int
main(int argc, char *argv[])
{
	const char *host_default = "127.0.0.1";

	static int op = 0;
	char *host = host_default;
	char *user = NULL;

	static struct option long_options[] = {
		{"host",     required_argument, 0, 'h'},
		{"user",     required_argument, 0, 'u'},
		{"register", no_argument,     &op,   1},
		{"send",     no_argument,     &op,   2},
		{"receive",  no_argument,     &op,   3},
		{"delete",   no_argument,     &op,   4},
		{0, 0, 0, 0}
	};
	int option_index = 0;
	int c;

	while (1) {
		c = getopt_long(argc, argv, "hu", long_options, &option_index);
		if (c == -1)
			break;

		switch (c) {
			case 0:
				break;
			case 'h':
				host = optarg;
				break;
			case 'u':
				user = optarg;
				break;
			default:
				abort();
		}
	}

	if (user == NULL)
		user = getpwuid(getuid())->pw_name;

	int rc;
	const char *passwd;

	if (op > 0)
		printf("Working as %s@%s.\n", user, host);

	switch (op) {
		case 1:
			// register
			chat_register(host, user);
			break;
		case 2:
			// send
			if (argc - optind < 2) {
				printf("Please specify recipient and message.\n");
				exit(EXIT_FAILURE);
			}
			char *recipient = argv[optind];
			char *message = argv[optind+1];
			rc = chat_sendmsg(host, recipient, user, message);
			printf("Send %s.\n", rc == 0 ? "OK" : "ERROR");
			break;
		case 3:
			// receive
			passwd = readpasswd();
			if (passwd == NULL) {
				printf("Can't find passwd file. Please register first.\n");
				exit(EXIT_FAILURE);
			}
			const char *result = chat_recvmsg(host, user, passwd);
			if (result == NULL || strlen(result) == 0)
				printf("No messages for %s.\n", user);
			else
				printf("%s", result);
			break;
		case 4:
			// delete
			passwd = readpasswd();
			if (passwd == NULL) {
				printf("Can't find passwd file. Please register first.\n");
				exit(EXIT_FAILURE);
			}
			rc = chat_delmsg(host, user, passwd);
			printf("Delete %s.\n", rc == 0 ? "OK" : "ERROR");
			break;

	}
	exit(EXIT_SUCCESS);
}