comparison src/protocols/msn/slpmsg.h @ 10345:2e01c503aa4f

[gaim-migrate @ 11556] Patch 1078151 from Felipe Contreras to fix some more MSN bugs: "User Dislpay messages, and other less used, did not set an slpcall, so the callback that should not be called, was called (in some very special cases)." ... "Here it goes the real real one, as far as I can tell. Cleaning + organizing + documentation + hard bug fix = big patch." -- Felipe Contreras I also fixed drag-and-drop to conversation window file transfers (which I had broken when I fixed some other dnd thing), made the debug output of the autoreconnect plugin more useful, and stopped the message notification plugin notifying you for messages sent by ignored users. committer: Tailor Script <tailor@pidgin.im>
author Stu Tomlinson <stu@nosnilmot.com>
date Sat, 11 Dec 2004 20:01:58 +0000
parents ab6636c5a136
children 93663df88ec4
comparison
equal deleted inserted replaced
10344:5976491e07a7 10345:2e01c503aa4f
32 #include "session.h" 32 #include "session.h"
33 #include "msg.h" 33 #include "msg.h"
34 34
35 #include "slp.h" 35 #include "slp.h"
36 36
37 /**
38 * A SLP Message This contains everything that we will need to send a SLP
39 * Message even if has to be sent in several parts.
40 */
37 struct _MsnSlpMessage 41 struct _MsnSlpMessage
38 { 42 {
39 MsnSlpSession *slpsession; 43 MsnSlpSession *slpsession;
40 MsnSlpCall *slpcall; 44 MsnSlpCall *slpcall; /**< The slpcall to which this slp message belongs (if applicable). */
41 MsnSlpLink *slplink; 45 MsnSlpLink *slplink; /**< The slplink through which this slp message is being sent. */
42 MsnSession *session; 46 MsnSession *session;
43 47
44 long session_id; 48 long session_id;
45 long id; 49 long id;
46 long ack_id; 50 long ack_id;
47 long ack_sub_id; 51 long ack_sub_id;
48 long long ack_size; 52 long long ack_size;
49 long app_id; 53 long app_id;
50 54
51 gboolean sip; 55 gboolean sip; /**< A flag that states if this is a SIP slp message. */
52 #if 0 56 int ref_count; /**< The reference count. */
53 gboolean wasted;
54 #endif
55 long flags; 57 long flags;
56 58
57 FILE *fp; 59 FILE *fp;
58 char *buffer; 60 char *buffer;
59 long long offset; 61 long long offset;
60 long long size; 62 long long size;
61 63
62 MsnMessage *msg; /* The temporary real message that will be sent */ 64 GList *msgs; /**< The real messages. */
63 65
64 #ifdef DEBUG_SLP 66 #if 1
67 MsnMessage *msg; /**< The temporary real message that will be sent. */
68 #endif
69
70 #ifdef MSN_DEBUG_SLP
65 char *info; 71 char *info;
66 gboolean text_body; 72 gboolean text_body;
67 #endif 73 #endif
68 }; 74 };
69 75
76 /**
77 * Creates a new slp message
78 *
79 * @param slplink The slplink through which this slp message will be sent.
80 * @return The created slp message.
81 */
70 MsnSlpMessage *msn_slpmsg_new(MsnSlpLink *slplink); 82 MsnSlpMessage *msn_slpmsg_new(MsnSlpLink *slplink);
83
84 /**
85 * Destroys a slp message
86 *
87 * @param slpmsg The slp message to destory.
88 */
71 void msn_slpmsg_destroy(MsnSlpMessage *slpmsg); 89 void msn_slpmsg_destroy(MsnSlpMessage *slpmsg);
90
72 void msn_slpmsg_set_body(MsnSlpMessage *slpmsg, const char *body, 91 void msn_slpmsg_set_body(MsnSlpMessage *slpmsg, const char *body,
73 long long size); 92 long long size);
74 void msn_slpmsg_open_file(MsnSlpMessage *slpmsg, 93 void msn_slpmsg_open_file(MsnSlpMessage *slpmsg,
75 const char *file_name); 94 const char *file_name);
76 MsnSlpMessage * msn_slpmsg_sip_new(MsnSlpCall *slpcall, int cseq, 95 MsnSlpMessage * msn_slpmsg_sip_new(MsnSlpCall *slpcall, int cseq,
77 const char *header, 96 const char *header,
78 const char *branch, 97 const char *branch,
79 const char *content_type, 98 const char *content_type,
80 const char *content); 99 const char *content);
81 100
82 #ifdef DEBUG_SLP 101 #ifdef MSN_DEBUG_SLP
83 const void msn_slpmsg_show(MsnMessage *msg); 102 const void msn_slpmsg_show(MsnMessage *msg);
84 #endif 103 #endif
85 104
86 #endif /* _MSN_SLPMSG_H_ */ 105 #endif /* _MSN_SLPMSG_H_ */