libpurple/protocols/zephyr/ZhmStat.c

Mon, 22 Aug 2022 21:40:04 -0500

author
Elliott Sales de Andrade <quantum.analyst@gmail.com>
date
Mon, 22 Aug 2022 21:40:04 -0500
branch
gtk4
changeset 41567
517ac516af27
parent 40643
1c9bdf8d3e85
permissions
-rw-r--r--

Inline pidgin_make_scrollable

We need to change it for GTK4, and there are few enough that it can be inlined. Eventually, that code might be a `.ui` anyway.

Testing Done:
Compile only.

Reviewed at https://reviews.imfreedom.org/r/1615/

2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
1 /* This file is part of the Project Athena Zephyr Notification System.
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
2 * It contains the ZhmStat() function.
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
3 *
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
4 * Created by: Marc Horowitz
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
5 *
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
6 * Copyright (c) 1996 by the Massachusetts Institute of Technology.
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
7 * For copying and distribution information, see the file
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 15435
diff changeset
8 * "mit-copyright.h".
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
9 */
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
10
8792
b0645c9dc276 [gaim-migrate @ 9554]
Christian Hammond <chipx86@chipx86.com>
parents: 2419
diff changeset
11 #include "internal.h"
10867
b39f9b646d6c [gaim-migrate @ 12553]
Arun Tharuvai <aatharuv@mit.edu>
parents: 8792
diff changeset
12
b39f9b646d6c [gaim-migrate @ 12553]
Arun Tharuvai <aatharuv@mit.edu>
parents: 8792
diff changeset
13 #ifdef WIN32
b39f9b646d6c [gaim-migrate @ 12553]
Arun Tharuvai <aatharuv@mit.edu>
parents: 8792
diff changeset
14 #include <winsock2.h>
b39f9b646d6c [gaim-migrate @ 12553]
Arun Tharuvai <aatharuv@mit.edu>
parents: 8792
diff changeset
15 #else
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
16 #include <sys/socket.h>
10867
b39f9b646d6c [gaim-migrate @ 12553]
Arun Tharuvai <aatharuv@mit.edu>
parents: 8792
diff changeset
17 #endif
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
18
40166
811f82db29dd zephyr: Modernize K&R function prototypes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31294
diff changeset
19 Code_t
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
20 ZhmStat(ZNotice_t *notice)
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
21 {
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
22 struct servent *sp;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
23 GInetAddress *inet_addr = NULL;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
24 GSocketAddress *addr = NULL;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
25 ZNotice_t req;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
26 Code_t code;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
27 GError *error = NULL;
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
28
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
29 sp = getservbyname(HM_SVCNAME, "udp");
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
30
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
31 memset(&req, 0, sizeof(req));
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
32 req.z_kind = STAT;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
33 req.z_port = 0;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
34 req.z_class = HM_STAT_CLASS;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
35 req.z_class_inst = HM_STAT_CLIENT;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
36 req.z_opcode = HM_GIMMESTATS;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
37 req.z_sender = "";
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
38 req.z_recipient = "";
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
39 req.z_default_format = "";
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
40 req.z_message_len = 0;
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
41
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
42 inet_addr = g_inet_address_new_loopback(G_SOCKET_FAMILY_IPV4);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
43 addr = g_inet_socket_address_new(inet_addr,
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
44 sp ? sp->s_port : HM_SVC_FALLBACK);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
45 code = ZSetDestAddr(addr);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
46 g_object_unref(inet_addr);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
47 g_object_unref(addr);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
48 if (code != ZERR_NONE) {
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
49 return code;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
50 }
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 15435
diff changeset
51
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
52 if ((code = ZSendNotice(&req, ZNOAUTH)) != ZERR_NONE) {
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
53 return code;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
54 }
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
55
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
56 /* Wait up to ten seconds for a response. */
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
57 if (!g_socket_condition_timed_wait(ZGetSocket(), G_IO_IN,
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
58 10 * G_USEC_PER_SEC, NULL, &error)) {
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
59 gint ret = ZERR_INTERNAL;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
60 if (error->code == G_IO_ERROR_TIMED_OUT) {
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
61 ret = ETIMEDOUT;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
62 }
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
63 g_error_free(error);
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
64 return ret;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
65 }
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
66
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
67 if (ZPending() == 0) {
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
68 return ZERR_HMDEAD;
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
69 }
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
70
40643
1c9bdf8d3e85 Convert zephyr to gio
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40166
diff changeset
71 return ZReceiveNotice(notice, NULL);
2419
beb509dd2935 [gaim-migrate @ 2432]
Salvatore Valente
parents:
diff changeset
72 }

mercurial