From: Benjamin Seidenberg <astronut@dlgeek.net>
Subject: Upstream patch to recognize wireless users
diff -urNad pork-0.99.8.1~/doc/help/main/set pork-0.99.8.1/doc/help/main/set
--- pork-0.99.8.1~/doc/help/main/set 2005-04-28 13:35:16.000000000 -0400
+++ pork-0.99.8.1/doc/help/main/set 2006-05-01 20:02:11.000000000 -0400
@@ -448,6 +448,9 @@
TEXT_BUDDY_IDLE (string)
The format string that specifies how the buddy list status indicator for idle users will be displayed.
+ TEXT_BUDDY_WIRELESS (string)
+ The format string that specifies how the buddy list status indicator for wireless users will be displayed.
+
TEXT_NO_NAME (string)
The string displayed in the status bar to indicate that no screen name has been specified yet. This string is displayed before logging in with any account.
diff -urNad pork-0.99.8.1~/src/pork_buddy.h pork-0.99.8.1/src/pork_buddy.h
--- pork-0.99.8.1~/src/pork_buddy.h 2005-04-28 13:35:17.000000000 -0400
+++ pork-0.99.8.1/src/pork_buddy.h 2006-05-01 20:02:11.000000000 -0400
@@ -14,7 +14,8 @@
STATUS_OFFLINE,
STATUS_ACTIVE,
STATUS_IDLE,
- STATUS_AWAY
+ STATUS_AWAY,
+ STATUS_WIRELESS
};
struct pork_acct;
@@ -48,7 +49,7 @@
u_int32_t signon_time;
u_int32_t idle_time;
u_int32_t warn_level;
- u_int32_t status:2;
+ u_int32_t status:3;
u_int32_t notify:1;
u_int32_t ignore:1;
u_int32_t type:6;
diff -urNad pork-0.99.8.1~/src/pork_format.c pork-0.99.8.1/src/pork_format.c
--- pork-0.99.8.1~/src/pork_format.c 2005-04-28 13:35:17.000000000 -0400
+++ pork-0.99.8.1/src/pork_format.c 2006-05-01 20:02:11.000000000 -0400
@@ -911,6 +911,8 @@
status_text = opt_get_str(OPT_TEXT_BUDDY_AWAY);
else if (buddy->status == STATUS_IDLE)
status_text = opt_get_str(OPT_TEXT_BUDDY_IDLE);
+ else if (buddy->status == STATUS_WIRELESS)
+ status_text = opt_get_str(OPT_TEXT_BUDDY_WIRELESS);
else
status_text = "%p?%x";
diff -urNad pork-0.99.8.1~/src/pork_set.c pork-0.99.8.1/src/pork_set.c
--- pork-0.99.8.1~/src/pork_set.c 2005-04-28 13:35:18.000000000 -0400
+++ pork-0.99.8.1/src/pork_set.c 2006-05-01 20:02:11.000000000 -0400
@@ -720,6 +720,12 @@
opt_set_format,
pork_acct_update_blist_format,
SET_STR(DEFAULT_TEXT_BUDDY_IDLE),
+ },{ "TEXT_BUDDY_WIRELESS",
+ OPT_STR,
+ 0,
+ opt_set_format,
+ pork_acct_update_blist_format,
+ SET_STR(DEFAULT_TEXT_BUDDY_WIRELESS),
},{ "TEXT_NO_NAME",
OPT_STR,
0,
diff -urNad pork-0.99.8.1~/src/pork_set.h pork-0.99.8.1/src/pork_set.h
--- pork-0.99.8.1~/src/pork_set.h 2005-04-28 13:35:18.000000000 -0400
+++ pork-0.99.8.1/src/pork_set.h 2006-05-01 20:02:11.000000000 -0400
@@ -135,6 +135,7 @@
OPT_TEXT_BUDDY_ACTIVE,
OPT_TEXT_BUDDY_AWAY,
OPT_TEXT_BUDDY_IDLE,
+ OPT_TEXT_BUDDY_WIRELESS,
OPT_TEXT_NO_NAME,
OPT_TEXT_NO_ROOM,
OPT_TEXT_TYPING,
diff -urNad pork-0.99.8.1~/src/pork_set_defaults.h pork-0.99.8.1/src/pork_set_defaults.h
--- pork-0.99.8.1~/src/pork_set_defaults.h 2005-04-28 13:35:18.000000000 -0400
+++ pork-0.99.8.1/src/pork_set_defaults.h 2006-05-01 20:02:11.000000000 -0400
@@ -123,6 +123,7 @@
#define DEFAULT_TEXT_BUDDY_ACTIVE "%G*%x"
#define DEFAULT_TEXT_BUDDY_AWAY "%r*%x"
#define DEFAULT_TEXT_BUDDY_IDLE "%Y*%x"
+#define DEFAULT_TEXT_BUDDY_WIRELESS "%b*%x"
#define DEFAULT_TEXT_NO_NAME "<not specified>"
#define DEFAULT_TEXT_NO_ROOM ":(not joined)"
#define DEFAULT_TEXT_TYPING "Typing"
diff -urNad pork-0.99.8.1~/src/protocols/aim/pork_aim_proto.c pork-0.99.8.1/src/protocols/aim/pork_aim_proto.c
--- pork-0.99.8.1~/src/protocols/aim/pork_aim_proto.c 2005-04-29 15:17:44.000000000 -0400
+++ pork-0.99.8.1/src/protocols/aim/pork_aim_proto.c 2006-05-01 20:02:11.000000000 -0400
@@ -162,6 +162,10 @@
if (userinfo->flags & AIM_FLAG_AWAY)
buddy->status = STATUS_AWAY;
+ if (userinfo->flags & AIM_FLAG_WIRELESS) {
+ buddy->status = STATUS_WIRELESS;
+ }
+
return (0);
}