+
+static int snachandler(struct aim_session_t *sess, aim_module_t *mod, struct command_rx_struct *rx, aim_modsnac_t *snac, unsigned char *data, int datalen)
+{
+
+ faimdprintf(sess, 0, "%s: snachandler: got %x/%x\n", mod->name, snac->family, snac->subtype);
+
+ if (snac->family != mod->family)
+ return 0;
+
+ if (snac->subtype == 0x0001)
+ return error(sess, mod, rx, snac, data, datalen);
+ else if (snac->subtype == 0x0003)
+ return reply(sess, mod, rx, snac, data, datalen);
+
+ return 0;
+}
+
+faim_internal int search_modfirst(struct aim_session_t *sess, aim_module_t *mod)
+{
+
+ mod->family = 0x000a;
+ mod->version = 0x0000;
+ mod->flags = 0;
+ strncpy(mod->name, "search", sizeof(mod->name));
+ mod->snachandler = snachandler;
+
+ return 0;
+}