Mercurial > pidgin
comparison libpurple/protocols/oscar/peer.c @ 32819:2c6510167895 default tip
propagate from branch 'im.pidgin.pidgin.2.x.y' (head 3315c5dfbd0ad16511bdcf865e5b07c02d07df24)
to branch 'im.pidgin.pidgin' (head cbd1eda6bcbf0565ae7766396bb8f6f419cb6a9a)
author | Elliott Sales de Andrade <qulogic@pidgin.im> |
---|---|
date | Sat, 02 Jun 2012 02:30:49 +0000 |
parents | 0c2efa69492b |
children |
comparison
equal
deleted
inserted
replaced
32818:01ff09d4a463 | 32819:2c6510167895 |
---|---|
210 peer_oft_checksum_destroy(conn->checksum_data); | 210 peer_oft_checksum_destroy(conn->checksum_data); |
211 | 211 |
212 if (conn->xfer != NULL) | 212 if (conn->xfer != NULL) |
213 { | 213 { |
214 PurpleXferStatusType status; | 214 PurpleXferStatusType status; |
215 conn->xfer->data = NULL; | 215 purple_xfer_set_protocol_data(conn->xfer, NULL); |
216 status = purple_xfer_get_status(conn->xfer); | 216 status = purple_xfer_get_status(conn->xfer); |
217 if ((status != PURPLE_XFER_STATUS_DONE) && | 217 if ((status != PURPLE_XFER_STATUS_DONE) && |
218 (status != PURPLE_XFER_STATUS_CANCEL_LOCAL) && | 218 (status != PURPLE_XFER_STATUS_CANCEL_LOCAL) && |
219 (status != PURPLE_XFER_STATUS_CANCEL_REMOTE)) | 219 (status != PURPLE_XFER_STATUS_CANCEL_REMOTE)) |
220 { | 220 { |
601 */ | 601 */ |
602 void | 602 void |
603 peer_connection_listen_cb(gpointer data, gint source, PurpleInputCondition cond) | 603 peer_connection_listen_cb(gpointer data, gint source, PurpleInputCondition cond) |
604 { | 604 { |
605 PeerConnection *conn; | 605 PeerConnection *conn; |
606 OscarData *od; | |
607 PurpleConnection *gc; | |
608 struct sockaddr addr; | 606 struct sockaddr addr; |
609 socklen_t addrlen = sizeof(addr); | 607 socklen_t addrlen = sizeof(addr); |
610 int flags; | 608 int flags; |
611 | 609 |
612 conn = data; | 610 conn = data; |
613 od = conn->od; | |
614 gc = od->gc; | |
615 | 611 |
616 purple_debug_info("oscar", "Accepting connection on listener socket.\n"); | 612 purple_debug_info("oscar", "Accepting connection on listener socket.\n"); |
617 | 613 |
618 conn->fd = accept(conn->listenerfd, &addr, &addrlen); | 614 conn->fd = accept(conn->listenerfd, &addr, &addrlen); |
619 if (conn->fd < 0) | 615 if (conn->fd < 0) |
849 * Remote user is connecting to us, so we'll need to verify | 845 * Remote user is connecting to us, so we'll need to verify |
850 * that the user who connected is our friend. | 846 * that the user who connected is our friend. |
851 */ | 847 */ |
852 conn->flags |= PEER_CONNECTION_FLAG_IS_INCOMING; | 848 conn->flags |= PEER_CONNECTION_FLAG_IS_INCOMING; |
853 | 849 |
854 conn->listen_data = purple_network_listen_range(5190, 5290, SOCK_STREAM, | 850 conn->listen_data = purple_network_listen_range(5190, 5290, AF_UNSPEC, SOCK_STREAM, TRUE, |
855 peer_connection_establish_listener_cb, conn); | 851 peer_connection_establish_listener_cb, conn); |
856 if (conn->listen_data != NULL) | 852 if (conn->listen_data != NULL) |
857 { | 853 { |
858 /* Opening listener socket... */ | 854 /* Opening listener socket... */ |
859 return; | 855 return; |
1079 gchar *filename; | 1075 gchar *filename; |
1080 | 1076 |
1081 conn->xfer = purple_xfer_new(account, PURPLE_XFER_RECEIVE, bn); | 1077 conn->xfer = purple_xfer_new(account, PURPLE_XFER_RECEIVE, bn); |
1082 if (conn->xfer) | 1078 if (conn->xfer) |
1083 { | 1079 { |
1084 conn->xfer->data = conn; | 1080 purple_xfer_set_protocol_data(conn->xfer, conn); |
1085 purple_xfer_ref(conn->xfer); | 1081 purple_xfer_ref(conn->xfer); |
1086 purple_xfer_set_size(conn->xfer, args->info.sendfile.totsize); | 1082 purple_xfer_set_size(conn->xfer, args->info.sendfile.totsize); |
1087 | 1083 |
1088 /* Set the file name */ | 1084 /* Set the file name */ |
1089 if (g_utf8_validate(args->info.sendfile.filename, -1, NULL)) | 1085 if (g_utf8_validate(args->info.sendfile.filename, -1, NULL)) |