]> andersk Git - libfaim.git/blobdiff - aim_search.c
- Thu Dec 14 03:39:34 UTC 2000
[libfaim.git] / aim_search.c
index 62e9016c41c2e798447097c9d0fee4b099b6149f..a8c4e1cfd75143485428988fbad2920acef9e5a3 100644 (file)
@@ -6,47 +6,30 @@
  *
  */
 
-#include <aim.h>
+#include <faim/aim.h>
 
-u_long aim_usersearch_address(struct aim_conn_t *conn, char *address)
+faim_export unsigned long aim_usersearch_address(struct aim_session_t *sess,
+                                                struct aim_conn_t *conn, 
+                                                char *address)
 {
-  struct command_tx_struct newpacket;
+  struct command_tx_struct *newpacket;
   
   if (!address)
     return -1;
 
-  newpacket.lock = 1;
-
-  if (conn)
-    newpacket.conn = conn;
-  else
-    newpacket.conn = aim_getconn_type(AIM_CONN_TYPE_BOS);
-
-  newpacket.type = 0x0002;
-  
-  newpacket.commandlen = 10 + strlen(address);
-  newpacket.data = (char *) malloc(newpacket.commandlen);
-
-  aim_putsnac(newpacket.data, 0x000a, 0x0002, 0x0000, aim_snac_nextid);
+  if (!(newpacket = aim_tx_new(AIM_FRAMETYPE_OSCAR, 0x0002, conn, 10+strlen(address))))
+    return -1;
 
-  memcpy(&(newpacket.data[10]), address, strlen(address));
+  newpacket->lock = 1;
 
-  aim_tx_enqueue(&newpacket);
+  aim_putsnac(newpacket->data, 0x000a, 0x0002, 0x0000, sess->snac_nextid);
 
-  {
-    struct aim_snac_t snac;
-    
-    snac.id = aim_snac_nextid;
-    snac.family = 0x000a;
-    snac.type = 0x0002;
-    snac.flags = 0x0000;
+  aimutil_putstr(newpacket->data+10, address, strlen(address));
 
-    snac.data = malloc(strlen(address)+1);
-    memcpy(snac.data, address, strlen(address)+1);
+  aim_tx_enqueue(sess, newpacket);
 
-    aim_newsnac(&snac);
-  }
+  aim_cachesnac(sess, 0x000a, 0x0002, 0x0000, address, strlen(address)+1);
 
-  return (aim_snac_nextid++);
+  return sess->snac_nextid;
 }
 
This page took 0.048758 seconds and 4 git commands to generate.