+
+#define AIM_IMFLAGS_AWAY 0x01 /* mark as an autoreply */
+#define AIM_IMFLAGS_ACK 0x02 /* request a receipt notice */
+
+faim_export unsigned long aim_send_im(struct aim_session_t *, struct aim_conn_t *, char *, u_int, char *);
+faim_export int aim_send_im_direct(struct aim_session_t *, struct aim_conn_t *, char *);
+faim_export struct aim_conn_t * aim_directim_initiate(struct aim_session_t *, struct aim_conn_t *, struct aim_directim_priv *, char *destsn);
+faim_export struct aim_conn_t *aim_directim_connect(struct aim_session_t *, struct aim_conn_t *, struct aim_directim_priv *);
+faim_export unsigned long aim_seticbmparam(struct aim_session_t *, struct aim_conn_t *conn);
+
+#ifdef FAIM_INTERNAL
+faim_internal int aim_parse_incoming_im_middle(struct aim_session_t *, struct command_rx_struct *);
+faim_internal int aim_parse_outgoing_im_middle(struct aim_session_t *, struct command_rx_struct *);
+faim_internal int aim_parse_msgerror_middle(struct aim_session_t *, struct command_rx_struct *);
+faim_internal int aim_negchan_middle(struct aim_session_t *sess, struct command_rx_struct *command);
+faim_internal int aim_parse_bosrights(struct aim_session_t *sess, struct command_rx_struct *command, ...);
+faim_internal int aim_parse_missedcall(struct aim_session_t *sess, struct command_rx_struct *command);
+#endif /* FAIM_INTERNAL */
+
+faim_export struct aim_conn_t *aim_getfile_initiate(struct aim_session_t *sess, struct aim_conn_t *conn, char *destsn);
+faim_export int aim_oft_getfile_request(struct aim_session_t *sess, struct aim_conn_t *conn, const unsigned char *name, const int size);
+faim_export int aim_oft_getfile_ack(struct aim_session_t *sess, struct aim_conn_t *conn);
+faim_export int aim_oft_getfile_end(struct aim_session_t *sess, struct aim_conn_t *conn);
+
+/* aim_info.c */
+#define AIM_CAPS_BUDDYICON 0x01
+#define AIM_CAPS_VOICE 0x02
+#define AIM_CAPS_IMIMAGE 0x04
+#define AIM_CAPS_CHAT 0x08
+#define AIM_CAPS_GETFILE 0x10
+#define AIM_CAPS_SENDFILE 0x20
+#define AIM_CAPS_GAMES 0x40
+#define AIM_CAPS_SAVESTOCKS 0x80
+
+#ifdef FAIM_INTERNAL
+extern u_char aim_caps[8][16];
+faim_internal unsigned short aim_getcap(unsigned char *capblock, int buflen);
+faim_internal int aim_putcap(unsigned char *capblock, int buflen, u_short caps);
+#endif /* FAIM_INTERNAL */
+
+
+#define AIM_GETINFO_GENERALINFO 0x00001
+#define AIM_GETINFO_AWAYMESSAGE 0x00003
+
+struct aim_msgcookie_t {
+ unsigned char cookie[8];
+ int type;
+ void *data;
+ struct aim_msgcookie_t *next;
+};
+
+struct aim_invite_priv {
+ char *sn;
+ char *roomname;
+ int exchange;
+ int instance;
+};
+