| 69 } |
69 } |
| 70 |
70 |
| 71 int irc_cmd_ctcp(struct irc_conn *irc, const char *cmd, const char *target, const char **args) |
71 int irc_cmd_ctcp(struct irc_conn *irc, const char *cmd, const char *target, const char **args) |
| 72 { |
72 { |
| 73 /* we have defined args as args[0] is target and args[1] is ctcp command */ |
73 /* we have defined args as args[0] is target and args[1] is ctcp command */ |
| 74 char *buf; |
74 char *buf; |
| 75 GString *string; |
75 GString *string; |
| 76 |
76 |
| 77 /* check if we have args */ |
77 /* check if we have args */ |
| 78 if (!args || !args[0] || !args[1]) |
78 if (!args || !args[0] || !args[1]) |
| 79 return 0; |
79 return 0; |
| 139 g_free(escaped); |
139 g_free(escaped); |
| 140 if (action[strlen(action) - 1] == '\n') |
140 if (action[strlen(action) - 1] == '\n') |
| 141 action[strlen(action) - 1] = '\0'; |
141 action[strlen(action) - 1] = '\0'; |
| 142 if (purple_conversation_get_type(convo) == PURPLE_CONV_TYPE_CHAT) |
142 if (purple_conversation_get_type(convo) == PURPLE_CONV_TYPE_CHAT) |
| 143 serv_got_chat_in(gc, purple_conv_chat_get_id(PURPLE_CONV_CHAT(convo)), |
143 serv_got_chat_in(gc, purple_conv_chat_get_id(PURPLE_CONV_CHAT(convo)), |
| 144 purple_connection_get_display_name(gc), |
144 purple_connection_get_display_name(gc), |
| 145 0, action, time(NULL)); |
145 0, action, time(NULL)); |
| 146 else |
146 else |
| 147 purple_conv_im_write(PURPLE_CONV_IM(convo), purple_connection_get_display_name(gc), |
147 purple_conv_im_write(PURPLE_CONV_IM(convo), purple_connection_get_display_name(gc), |
| 148 action, 0, time(NULL)); |
148 action, 0, time(NULL)); |
| 149 g_free(action); |
149 g_free(action); |
| 150 } |
150 } |
| 151 |
151 |
| 152 return 1; |
152 return 1; |
| 153 } |
153 } |
| 154 |
154 |
| 155 int irc_cmd_ctcp_version(struct irc_conn *irc, const char *cmd, const char *target, const char **args) |
155 int irc_cmd_ctcp_version(struct irc_conn *irc, const char *cmd, const char *target, const char **args) |
| 156 { |
156 { |
| 157 char *buf; |
157 char *buf; |
| 158 |
|
| 159 |
158 |
| 160 if (!args || !args[0]) |
159 if (!args || !args[0]) |
| 161 return 0; |
160 return 0; |
| 162 |
161 |
| 163 buf = irc_format(irc, "vn:", "PRIVMSG", args[0], "\001VERSION\001"); |
162 buf = irc_format(irc, "vn:", "PRIVMSG", args[0], "\001VERSION\001"); |