Changeset 537d9b9 for protocols/nogaim.h


Ignore:
Timestamp:
2016-11-20T08:40:36Z (7 years ago)
Author:
dequis <dx@…>
Children:
3f44e43
Parents:
ba52ac5 (diff), 9f03c47 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge master up to commit '9f03c47' into parson

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/nogaim.h

    rba52ac5 r537d9b9  
    102102
    103103        GSList *groupchats;
     104        GSList *chatlist;
    104105};
    105106
     
    144145        char *description;
    145146};
     147
     148/* This enum takes a few things from libpurple and a few things from old OPT_ flags.
     149 * The only flag that was used before this struct was PRPL_OPT_NOOTR.
     150 *
     151 * The libpurple ones only use the same values as the PurpleProtocolOptions
     152 * enum for convenience, but there's no promise of direct compatibility with
     153 * those values. As of libpurple 2.8.0 they use up to 0x800 (1 << 11), which is
     154 * a nice coincidence.
     155 */
     156typedef enum {
     157        /* The protocol doesn't use passwords
     158         * Mirrors libpurple's OPT_PROTO_NO_PASSWORD */
     159        PRPL_OPT_NO_PASSWORD = 1 << 4,
     160
     161        /* The protocol doesn't require passwords, but may use them
     162         * Mirrors libpurple's OPT_PROTO_PASSWORD_OPTIONAL */
     163        PRPL_OPT_PASSWORD_OPTIONAL = 1 << 7,
     164
     165        /* The protocol is not suitable for OTR, see OPT_NOOTR */
     166        PRPL_OPT_NOOTR = 1 << 12,
     167} prpl_options_t;
    146168
    147169struct prpl {
     
    269291        gboolean (* handle_is_self) (struct im_connection *, const char *who);
    270292
     293        /* This sets/updates the im_connection->chatlist field with a
     294         * bee_chat_info_t GSList. This function should ensure the
     295         * bee_chat_list_finish() function gets called at some point
     296         * after the chat list is completely updated.
     297         */
     298        void (* chat_list) (struct im_connection *, const char *server);
     299
    271300        /* Some placeholders so eventually older plugins may cooperate with newer BitlBees. */
    272301        void *resv1;
     
    277306};
    278307
     308struct plugin_info
     309{
     310        guint abiver;
     311        const char *name;
     312        const char *version;
     313        const char *description;
     314        const char *author;
     315        const char *url;
     316};
     317
     318#ifdef WITH_PLUGINS
     319G_MODULE_EXPORT GList *get_plugins();
     320#endif
     321
    279322/* im_api core stuff. */
    280323void nogaim_init();
     324G_MODULE_EXPORT GList *get_protocols();
     325G_MODULE_EXPORT GList *get_protocols_disabled();
    281326G_MODULE_EXPORT GSList *get_connections();
    282327G_MODULE_EXPORT struct prpl *find_protocol(const char *name);
     
    330375G_MODULE_EXPORT void imcb_rename_buddy(struct im_connection *ic, const char *handle, const char *realname);
    331376G_MODULE_EXPORT void imcb_buddy_nick_hint(struct im_connection *ic, const char *handle, const char *nick);
     377G_MODULE_EXPORT void imcb_buddy_nick_change(struct im_connection *ic, const char *handle, const char *nick);
    332378G_MODULE_EXPORT void imcb_buddy_action_response(bee_user_t *bu, const char *action, char * const args[], void *data);
    333379G_MODULE_EXPORT GSList *imcb_get_local_contacts(struct im_connection *ic);
Note: See TracChangeset for help on using the changeset viewer.