Changeset cf02dd6 for libfaim/aim.h


Ignore:
Timestamp:
Dec 10, 2003, 3:20:45 PM (20 years ago)
Author:
James M. Kretchmar <kretch@mit.edu>
Branches:
master, barnowl_perlaim, debian, owl, release-1.10, release-1.4, release-1.5, release-1.6, release-1.7, release-1.8, release-1.9
Children:
b1fe407
Parents:
8c46404
Message:
*** empty log message ***
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libfaim/aim.h

    re374dee rcf02dd6  
    7878#ifndef TRUE
    7979#define TRUE (!FALSE)
     80#endif
     81
     82#ifndef bool
     83#define bool fu8_t
    8084#endif
    8185
     
    206210}
    207211
     212#define CLIENTINFO_AIM_5_5_3415 { \
     213        "AOL Instant Messenger, version 5.5.3415/WIN32", \
     214        0x0109, \
     215        0x0005, 0x0005, \
     216        0x0000, 0x0057, \
     217        0x000000ef, \
     218        "us", "en", \
     219}
     220
    208221#define CLIENTINFO_ICHAT_1_0 { \
    209222        "Apple iChat", \
     
    244257}
    245258
    246 #define CLIENTINFO_ICQBasic_14_3_1068 { \
     259#define CLIENTINFO_ICQBASIC_14_3_1068 { \
    247260        "ICQBasic", \
    248261        0x010a, \
     
    253266}
    254267
    255 #define CLIENTINFO_Netscape_7_0_1 { \
     268#define CLIENTINFO_NETSCAPE_7_0_1 { \
    256269        "Netscape 2000 an approved user of AOL Instant Messenger (SM)", \
    257270        0x1d0d, \
     
    366379} aim_msgcookie_t;
    367380
    368 /* Values for sess->flags */
    369 #define AIM_SESS_FLAGS_SNACLOGIN         0x00000001
    370 #define AIM_SESS_FLAGS_XORLOGIN          0x00000002
    371 #define AIM_SESS_FLAGS_NONBLOCKCONNECT   0x00000004
    372 #define AIM_SESS_FLAGS_DONTTIMEOUTONICBM 0x00000008
    373 
    374381/*
    375382 * AIM Session: The main client-data interface. 
     
    427434        } socksproxy;
    428435
    429         fu32_t flags; /* AIM_SESS_FLAGS_ */
     436        bool nonblocking;
    430437
    431438        int debug;
     
    445452        struct aim_authresp_info *authinfo;
    446453        struct aim_emailinfo *emailinfo;
     454
     455        struct {
     456                struct aim_userinfo_s *userinfo;
     457                struct userinfo_node *torequest;
     458                struct userinfo_node *requested;
     459                int waiting_for_response;
     460        } locate;
    447461
    448462        /* Server-stored information (ssi) */
     
    475489
    476490
     491
    477492/*
    478493 * Get command from connections
     
    540555faim_export int aim_request_login(aim_session_t *sess, aim_conn_t *conn, const char *sn);
    541556faim_export int aim_send_login(aim_session_t *, aim_conn_t *, const char *, const char *, struct client_info_s *, const char *key);
    542 faim_export int aim_encode_password_md5(const char *password, const char *key, fu8_t *digest);
    543557faim_export void aim_purge_rxqueue(aim_session_t *);
    544558faim_export void aim_cleansnacs(aim_session_t *, int maxage);
     
    571585typedef void (*faim_debugging_callback_t)(aim_session_t *sess, int level, const char *format, va_list va);
    572586faim_export int aim_setdebuggingcb(aim_session_t *sess, faim_debugging_callback_t);
    573 faim_export void aim_session_init(aim_session_t *, fu32_t flags, int debuglevel);
     587faim_export void aim_session_init(aim_session_t *, bool nonblocking, int debuglevel);
    574588faim_export void aim_session_kill(aim_session_t *);
    575589faim_export void aim_setupproxy(aim_session_t *sess, const char *server, const char *username, const char *password);
     
    580594
    581595
    582 /* service.c */
     596/* 0x0001 - service.c */
    583597faim_export int aim_srv_setavailmsg(aim_session_t *sess, char *msg);
     598faim_export int aim_srv_setidle(aim_session_t *sess, fu32_t idletime);
    584599
    585600
     
    600615faim_export int aim_nop(aim_session_t *, aim_conn_t *);
    601616faim_export int aim_flap_nop(aim_session_t *sess, aim_conn_t *conn);
    602 faim_export int aim_bos_setidle(aim_session_t *, aim_conn_t *, fu32_t);
    603617faim_export int aim_bos_changevisibility(aim_session_t *, aim_conn_t *, int, const char *);
    604 faim_export int aim_bos_setbuddylist(aim_session_t *, aim_conn_t *, const char *);
    605 faim_export int aim_bos_setprofile(aim_session_t *sess, aim_conn_t *conn, const char *profile_encoding, const char *profile, const int profile_len, const char *awaymsg_encoding, const char *awaymsg, const int awaymsg_len, fu32_t caps);
    606618faim_export int aim_bos_setgroupperm(aim_session_t *, aim_conn_t *, fu32_t mask);
    607619faim_export int aim_bos_setprivacyflags(aim_session_t *, aim_conn_t *, fu32_t);
     
    609621faim_export int aim_reqservice(aim_session_t *, aim_conn_t *, fu16_t);
    610622faim_export int aim_bos_reqrights(aim_session_t *, aim_conn_t *);
    611 faim_export int aim_bos_reqbuddyrights(aim_session_t *, aim_conn_t *);
    612 faim_export int aim_bos_reqlocaterights(aim_session_t *, aim_conn_t *);
    613 faim_export int aim_setdirectoryinfo(aim_session_t *sess, aim_conn_t *conn, const char *first, const char *middle, const char *last, const char *maiden, const char *nickname, const char *street, const char *city, const char *state, const char *zip, int country, fu16_t privacy);
    614 faim_export int aim_setuserinterests(aim_session_t *sess, aim_conn_t *conn, const char *interest1, const char *interest2, const char *interest3, const char *interest4, const char *interest5, fu16_t privacy);
    615623faim_export int aim_setextstatus(aim_session_t *sess, fu32_t status);
    616624
     
    936944
    937945
    938 /* info.c */
     946/* 0x0002 - locate.c */
    939947/*
    940948 * AIM User Info, Standard Form.
    941949 */
    942 #define AIM_FLAG_UNCONFIRMED    0x0001 /* "damned transients" */
     950#define AIM_FLAG_UNCONFIRMED    0x0001 /* "damned transients" */
    943951#define AIM_FLAG_ADMINISTRATOR  0x0002
    944 #define AIM_FLAG_AOL            0x0004
    945 #define AIM_FLAG_OSCAR_PAY      0x0008
    946 #define AIM_FLAG_FREE           0x0010
    947 #define AIM_FLAG_AWAY           0x0020
    948 #define AIM_FLAG_ICQ            0x0040
    949 #define AIM_FLAG_WIRELESS       0x0080
    950 #define AIM_FLAG_UNKNOWN100     0x0100
    951 #define AIM_FLAG_UNKNOWN200     0x0200
    952 #define AIM_FLAG_ACTIVEBUDDY    0x0400
    953 #define AIM_FLAG_UNKNOWN800     0x0800
    954 #define AIM_FLAG_ABINTERNAL     0x1000
    955 #define AIM_FLAG_ALLUSERS       0x001f
     952#define AIM_FLAG_AOL                    0x0004
     953#define AIM_FLAG_OSCAR_PAY              0x0008
     954#define AIM_FLAG_FREE                   0x0010
     955#define AIM_FLAG_AWAY                   0x0020
     956#define AIM_FLAG_ICQ                    0x0040
     957#define AIM_FLAG_WIRELESS               0x0080
     958#define AIM_FLAG_UNKNOWN100             0x0100
     959#define AIM_FLAG_UNKNOWN200             0x0200
     960#define AIM_FLAG_ACTIVEBUDDY    0x0400
     961#define AIM_FLAG_UNKNOWN800             0x0800
     962#define AIM_FLAG_ABINTERNAL             0x1000
     963#define AIM_FLAG_ALLUSERS               0x001f
    956964
    957965#define AIM_USERINFO_PRESENT_FLAGS        0x00000001
     
    966974#define AIM_USERINFO_PRESENT_CREATETIME   0x00000200
    967975
    968 typedef struct {
    969         char sn[MAXSNLEN+1];
     976struct userinfo_node {
     977        char *sn;
     978        struct userinfo_node *next;
     979};
     980
     981typedef struct aim_userinfo_s {
     982        char *sn;
    970983        fu16_t warnlevel; /* evil percent * 10 (999 = 99.9%) */
    971984        fu16_t idletime; /* in seconds */
     
    982995        } icqinfo;
    983996        fu32_t present;
     997
    984998        fu16_t iconcsumlen;
    985999        fu8_t *iconcsum;
    986         char *availmsg_encoding;
    987         char *availmsg;
    988         int availmsg_len;
     1000
     1001        char *info;
     1002        char *info_encoding;
     1003        fu16_t info_len;
     1004
     1005        char *avail;
     1006        char *avail_encoding;
     1007        fu16_t avail_len;
     1008
     1009        char *away;
     1010        char *away_encoding;
     1011        fu16_t away_len;
     1012
     1013        struct aim_userinfo_s *next;
    9891014} aim_userinfo_t;
    9901015
    991 faim_export const char *aim_userinfo_sn(aim_userinfo_t *ui);
    992 faim_export fu16_t aim_userinfo_flags(aim_userinfo_t *ui);
    993 faim_export fu16_t aim_userinfo_idle(aim_userinfo_t *ui);
    994 faim_export float aim_userinfo_warnlevel(aim_userinfo_t *ui);
    995 faim_export time_t aim_userinfo_createtime(aim_userinfo_t *ui);
    996 faim_export time_t aim_userinfo_membersince(aim_userinfo_t *ui);
    997 faim_export time_t aim_userinfo_onlinesince(aim_userinfo_t *ui);
    998 faim_export fu32_t aim_userinfo_sessionlen(aim_userinfo_t *ui);
    999 faim_export int aim_userinfo_hascap(aim_userinfo_t *ui, fu32_t cap);
    1000 
    1001 #define AIM_CAPS_BUDDYICON      0x00000001
    1002 #define AIM_CAPS_VOICE          0x00000002
    1003 #define AIM_CAPS_DIRECTIM       0x00000004
    1004 #define AIM_CAPS_CHAT           0x00000008
    1005 #define AIM_CAPS_GETFILE        0x00000010
    1006 #define AIM_CAPS_SENDFILE       0x00000020
    1007 #define AIM_CAPS_GAMES          0x00000040
    1008 #define AIM_CAPS_SAVESTOCKS     0x00000080
     1016#define AIM_CAPS_BUDDYICON              0x00000001
     1017#define AIM_CAPS_VOICE                  0x00000002
     1018#define AIM_CAPS_DIRECTIM               0x00000004
     1019#define AIM_CAPS_CHAT                   0x00000008
     1020#define AIM_CAPS_GETFILE                0x00000010
     1021#define AIM_CAPS_SENDFILE               0x00000020
     1022#define AIM_CAPS_GAMES                  0x00000040
     1023#define AIM_CAPS_SAVESTOCKS             0x00000080
    10091024#define AIM_CAPS_SENDBUDDYLIST  0x00000100
    1010 #define AIM_CAPS_GAMES2         0x00000200
    1011 #define AIM_CAPS_ICQ            0x00000400
    1012 #define AIM_CAPS_APINFO         0x00000800
    1013 #define AIM_CAPS_ICQRTF         0x00001000
    1014 #define AIM_CAPS_EMPTY          0x00002000
     1025#define AIM_CAPS_GAMES2                 0x00000200
     1026#define AIM_CAPS_ICQ_DIRECT             0x00000400
     1027#define AIM_CAPS_APINFO                 0x00000800
     1028#define AIM_CAPS_ICQRTF                 0x00001000
     1029#define AIM_CAPS_EMPTY                  0x00002000
    10151030#define AIM_CAPS_ICQSERVERRELAY 0x00004000
    1016 #define AIM_CAPS_ICQUTF8OLD     0x00008000
     1031#define AIM_CAPS_ICQUTF8OLD             0x00008000
    10171032#define AIM_CAPS_TRILLIANCRYPT  0x00010000
    1018 #define AIM_CAPS_ICQUTF8        0x00020000
     1033#define AIM_CAPS_ICQUTF8                0x00020000
    10191034#define AIM_CAPS_INTEROPERATE   0x00040000
    1020 #define AIM_CAPS_ICHAT          0x00080000
    1021 #define AIM_CAPS_HIPTOP         0x00100000
    1022 #define AIM_CAPS_SECUREIM       0x00200000
    1023 #define AIM_CAPS_LAST           0x00400000
    1024 
    1025 faim_export int aim_0002_000b(aim_session_t *sess, aim_conn_t *conn, const char *sn);
     1035#define AIM_CAPS_ICHAT                  0x00080000
     1036#define AIM_CAPS_HIPTOP                 0x00100000
     1037#define AIM_CAPS_SECUREIM               0x00200000
     1038#define AIM_CAPS_SMS                    0x00400000
     1039#define AIM_CAPS_GENERICUNKNOWN 0x00800000
     1040#define AIM_CAPS_VIDEO                  0x01000000
     1041#define AIM_CAPS_LAST                   0x02000000
    10261042
    10271043#define AIM_SENDMEMBLOCK_FLAG_ISREQUEST  0
     
    10291045
    10301046faim_export int aim_sendmemblock(aim_session_t *sess, aim_conn_t *conn, fu32_t offset, fu32_t len, const fu8_t *buf, fu8_t flag);
    1031 
    1032 #define AIM_GETINFO_GENERALINFO 0x00001
    1033 #define AIM_GETINFO_AWAYMESSAGE 0x00003
    1034 #define AIM_GETINFO_CAPABILITIES 0x0004
    10351047
    10361048struct aim_invite_priv {
     
    10581070#define AIM_COOKIETYPE_OFTICON  0x15
    10591071
    1060 /* 0x0005 */ faim_export int aim_getinfo(aim_session_t *, aim_conn_t *, const char *, fu16_t);
     1072faim_export aim_userinfo_t *aim_locate_finduserinfo(aim_session_t *sess, const char *sn);
     1073
     1074/* 0x0002 */ faim_export int aim_locate_reqrights(aim_session_t *sess);
     1075/* 0x0004 */ faim_export int aim_locate_setprofile(aim_session_t *sess, const char *profile_encoding, const char *profile, const int profile_len, const char *awaymsg_encoding, const char *awaymsg, const int awaymsg_len);
     1076/* 0x0004 */ faim_export int aim_locate_setcaps(aim_session_t *sess, fu32_t caps);
     1077/* 0x0005 */ faim_export int aim_locate_getinfo(aim_session_t *sess, const char *, fu16_t);
     1078/* 0x0009 */ faim_export int aim_locate_setdirinfo(aim_session_t *sess, const char *first, const char *middle, const char *last, const char *maiden, const char *nickname, const char *street, const char *city, const char *state, const char *zip, int country, fu16_t privacy);
     1079/* 0x000b */ faim_export int aim_locate_000b(aim_session_t *sess, const char *sn);
     1080/* 0x000f */ faim_export int aim_locate_setinterests(aim_session_t *sess, const char *interest1, const char *interest2, const char *interest3, const char *interest4, const char *interest5, fu16_t privacy);
     1081/* 0x0015 */ faim_export int aim_locate_getinfoshort(aim_session_t *sess, const char *sn, fu32_t flags);
    10611082
    10621083
    10631084
    10641085/* 0x0003 - buddylist.c */
    1065 /* 0x0004 */ faim_export int aim_add_buddy(aim_session_t *, aim_conn_t *, const char *);
    1066 /* 0x0005 */ faim_export int aim_remove_buddy(aim_session_t *, aim_conn_t *, const char *);
    1067 /* 0x000b */ faim_export int aim_sendbuddyoncoming(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *info);
    1068 /* 0x000c */ faim_export int aim_sendbuddyoffgoing(aim_session_t *sess, aim_conn_t *conn, const char *sn);
     1086/* 0x0002 */ faim_export int aim_buddylist_reqrights(aim_session_t *, aim_conn_t *);
     1087/* 0x0004 */ faim_export int aim_buddylist_set(aim_session_t *, aim_conn_t *, const char *);
     1088/* 0x0004 */ faim_export int aim_buddylist_addbuddy(aim_session_t *, aim_conn_t *, const char *);
     1089/* 0x0005 */ faim_export int aim_buddylist_removebuddy(aim_session_t *, aim_conn_t *, const char *);
     1090/* 0x000b */ faim_export int aim_buddylist_oncoming(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *info);
     1091/* 0x000c */ faim_export int aim_buddylist_offgoing(aim_session_t *sess, aim_conn_t *conn, const char *sn);
    10691092
    10701093
     
    11941217faim_export fu32_t aim_ssi_getpresence(struct aim_ssi_item *list);
    11951218faim_export char *aim_ssi_getalias(struct aim_ssi_item *list, const char *gn, const char *sn);
     1219faim_export char *aim_ssi_getcomment(struct aim_ssi_item *list, const char *gn, const char *sn);
    11961220faim_export int aim_ssi_waitingforauth(struct aim_ssi_item *list, const char *gn, const char *sn);
    11971221
     
    12051229faim_export int aim_ssi_movebuddy(aim_session_t *sess, const char *oldgn, const char *newgn, const char *sn);
    12061230faim_export int aim_ssi_aliasbuddy(aim_session_t *sess, const char *gn, const char *sn, const char *alias);
     1231faim_export int aim_ssi_editcomment(aim_session_t *sess, const char *gn, const char *sn, const char *alias);
    12071232faim_export int aim_ssi_rename_group(aim_session_t *sess, const char *oldgn, const char *newgn);
    12081233faim_export int aim_ssi_cleanlist(aim_session_t *sess);
     
    12111236faim_export int aim_ssi_setpresence(aim_session_t *sess, fu32_t presence);
    12121237faim_export int aim_ssi_seticon(aim_session_t *sess, fu8_t *iconsum, fu16_t iconsumlen);
     1238faim_export int aim_ssi_delicon(aim_session_t *sess);
    12131239
    12141240
     
    13261352};
    13271353
    1328 faim_export int aim_email_sendcookies(aim_session_t *sess, aim_conn_t *conn);
    1329 faim_export int aim_email_activate(aim_session_t *sess, aim_conn_t *conn);
    1330 
    1331 
    1332 
     1354faim_export int aim_email_sendcookies(aim_session_t *sess);
     1355faim_export int aim_email_activate(aim_session_t *sess);
     1356
     1357
     1358
     1359#if defined(FAIM_INTERNAL) || defined(FAIM_NEED_TLV)
    13331360/* tlv.c - TLV handling */
    1334 #if defined(FAIM_INTERNAL) || defined(FAIM_NEED_TLV)
    1335 /* Generic TLV structure. */
     1361
     1362/* TLV structure */
    13361363typedef struct aim_tlv_s {
    13371364        fu16_t type;
     
    13401367} aim_tlv_t;
    13411368
    1342 /* List of above. */
     1369/* TLV List structure */
    13431370typedef struct aim_tlvlist_s {
    13441371        aim_tlv_t *tlv;
     
    13461373} aim_tlvlist_t;
    13471374
    1348 /* TLV-handling functions */
    1349 
    1350 #if 0
    1351 /* Very, very raw TLV handling. */
    1352 faim_internal int aim_puttlv_8(fu8_t *buf, const fu16_t t, const fu8_t v);
    1353 faim_internal int aim_puttlv_16(fu8_t *buf, const fu16_t t, const fu16_t v);
    1354 faim_internal int aim_puttlv_32(fu8_t *buf, const fu16_t t, const fu32_t v);
    1355 faim_internal int aim_puttlv_raw(fu8_t *buf, const fu16_t t, const fu16_t l, const fu8_t *v);
    1356 #endif
    1357 
    1358 /* TLV list handling. */
    1359 faim_internal aim_tlvlist_t *aim_readtlvchain(aim_bstream_t *bs);
    1360 faim_internal aim_tlvlist_t *aim_readtlvchain_num(aim_bstream_t *bs, fu16_t num);
    1361 faim_internal aim_tlvlist_t *aim_readtlvchain_len(aim_bstream_t *bs, fu16_t len);
     1375/* TLV handling functions */
     1376faim_internal aim_tlv_t *aim_tlv_gettlv(aim_tlvlist_t *list, fu16_t type, const int nth);
     1377faim_internal char *aim_tlv_getstr(aim_tlvlist_t *list, const fu16_t type, const int nth);
     1378faim_internal fu8_t aim_tlv_get8(aim_tlvlist_t *list, const fu16_t type, const int nth);
     1379faim_internal fu16_t aim_tlv_get16(aim_tlvlist_t *list, const fu16_t type, const int nth);
     1380faim_internal fu32_t aim_tlv_get32(aim_tlvlist_t *list, const fu16_t type, const int nth);
     1381
     1382/* TLV list handling functions */
     1383faim_internal aim_tlvlist_t *aim_tlvlist_read(aim_bstream_t *bs);
     1384faim_internal aim_tlvlist_t *aim_tlvlist_readnum(aim_bstream_t *bs, fu16_t num);
     1385faim_internal aim_tlvlist_t *aim_tlvlist_readlen(aim_bstream_t *bs, fu16_t len);
    13621386faim_internal aim_tlvlist_t *aim_tlvlist_copy(aim_tlvlist_t *orig);
     1387
     1388faim_internal int aim_tlvlist_count(aim_tlvlist_t **list);
     1389faim_internal int aim_tlvlist_size(aim_tlvlist_t **list);
    13631390faim_internal int aim_tlvlist_cmp(aim_tlvlist_t *one, aim_tlvlist_t *two);
    1364 faim_internal void aim_freetlvchain(aim_tlvlist_t **list);
    1365 faim_internal aim_tlv_t *aim_gettlv(aim_tlvlist_t *, fu16_t t, const int n);
    1366 faim_internal char *aim_gettlv_str(aim_tlvlist_t *, const fu16_t t, const int n);
    1367 faim_internal fu8_t aim_gettlv8(aim_tlvlist_t *list, const fu16_t type, const int num);
    1368 faim_internal fu16_t aim_gettlv16(aim_tlvlist_t *list, const fu16_t t, const int n);
    1369 faim_internal fu32_t aim_gettlv32(aim_tlvlist_t *list, const fu16_t t, const int n);
    1370 faim_internal int aim_writetlvchain(aim_bstream_t *bs, aim_tlvlist_t **list);
    1371 faim_internal int aim_addtlvtochain8(aim_tlvlist_t **list, const fu16_t t, const fu8_t v);
    1372 faim_internal int aim_addtlvtochain16(aim_tlvlist_t **list, const fu16_t t, const fu16_t v);
    1373 faim_internal int aim_addtlvtochain32(aim_tlvlist_t **list, const fu16_t type, const fu32_t v);
    1374 faim_internal int aim_addtlvtochain_raw(aim_tlvlist_t **list, const fu16_t t, const fu16_t l, const fu8_t *v);
    1375 faim_internal int aim_addtlvtochain_caps(aim_tlvlist_t **list, const fu16_t t, const fu32_t caps);
    1376 faim_internal int aim_addtlvtochain_noval(aim_tlvlist_t **list, const fu16_t type);
    1377 faim_internal int aim_addtlvtochain_userinfo(aim_tlvlist_t **list, fu16_t type, aim_userinfo_t *ui);
    1378 faim_internal int aim_addtlvtochain_frozentlvlist(aim_tlvlist_t **list, fu16_t type, aim_tlvlist_t **tl);
    1379 faim_internal int aim_counttlvchain(aim_tlvlist_t **list);
    1380 faim_internal int aim_sizetlvchain(aim_tlvlist_t **list);
     1391faim_internal int aim_tlvlist_write(aim_bstream_t *bs, aim_tlvlist_t **list);
     1392faim_internal void aim_tlvlist_free(aim_tlvlist_t **list);
     1393
     1394faim_internal int aim_tlvlist_add_raw(aim_tlvlist_t **list, const fu16_t type, const fu16_t length, const fu8_t *value);
     1395faim_internal int aim_tlvlist_add_noval(aim_tlvlist_t **list, const fu16_t type);
     1396faim_internal int aim_tlvlist_add_8(aim_tlvlist_t **list, const fu16_t type, const fu8_t value);
     1397faim_internal int aim_tlvlist_add_16(aim_tlvlist_t **list, const fu16_t type, const fu16_t value);
     1398faim_internal int aim_tlvlist_add_32(aim_tlvlist_t **list, const fu16_t type, const fu32_t value);
     1399faim_internal int aim_tlvlist_add_caps(aim_tlvlist_t **list, const fu16_t type, const fu32_t caps);
     1400faim_internal int aim_tlvlist_add_userinfo(aim_tlvlist_t **list, fu16_t type, aim_userinfo_t *userinfo);
     1401faim_internal int aim_tlvlist_add_frozentlvlist(aim_tlvlist_t **list, fu16_t type, aim_tlvlist_t **tl);
     1402
     1403faim_internal int aim_tlvlist_replace_raw(aim_tlvlist_t **list, const fu16_t type, const fu16_t lenth, const fu8_t *value);
     1404faim_internal int aim_tlvlist_replace_noval(aim_tlvlist_t **list, const fu16_t type);
     1405faim_internal int aim_tlvlist_replace_8(aim_tlvlist_t **list, const fu16_t type, const fu8_t value);
     1406faim_internal int aim_tlvlist_replace_16(aim_tlvlist_t **list, const fu16_t type, const fu16_t value);
     1407faim_internal int aim_tlvlist_replace_32(aim_tlvlist_t **list, const fu16_t type, const fu32_t value);
     1408
     1409faim_internal void aim_tlvlist_remove(aim_tlvlist_t **list, const fu16_t type);
    13811410#endif /* FAIM_INTERNAL */
    13821411
Note: See TracChangeset for help on using the changeset viewer.