| 909 if (xfer->ops.start != NULL) |
909 if (xfer->ops.start != NULL) |
| 910 xfer->ops.start(xfer); |
910 xfer->ops.start(xfer); |
| 911 } |
911 } |
| 912 |
912 |
| 913 static void |
913 static void |
| 914 connect_cb(gpointer data, gint source, GaimInputCondition condition) |
914 connect_cb(gpointer data, gint source) |
| 915 { |
915 { |
| 916 GaimXfer *xfer = (GaimXfer *)data; |
916 GaimXfer *xfer = (GaimXfer *)data; |
| 917 |
917 |
| 918 xfer->fd = source; |
918 xfer->fd = source; |
| 919 |
919 |
| 920 begin_transfer(xfer, condition); |
920 begin_transfer(xfer, GAIM_INPUT_READ); |
| 921 } |
921 } |
| 922 |
922 |
| 923 void |
923 void |
| 924 gaim_xfer_start(GaimXfer *xfer, int fd, const char *ip, |
924 gaim_xfer_start(GaimXfer *xfer, int fd, const char *ip, |
| 925 unsigned int port) |
925 unsigned int port) |
| 944 xfer->remote_ip = g_strdup(ip); |
944 xfer->remote_ip = g_strdup(ip); |
| 945 xfer->remote_port = port; |
945 xfer->remote_port = port; |
| 946 |
946 |
| 947 /* Establish a file descriptor. */ |
947 /* Establish a file descriptor. */ |
| 948 gaim_proxy_connect(xfer->account, xfer->remote_ip, |
948 gaim_proxy_connect(xfer->account, xfer->remote_ip, |
| 949 xfer->remote_port, connect_cb, xfer); |
949 xfer->remote_port, connect_cb, NULL, xfer); |
| 950 |
950 |
| 951 return; |
951 return; |
| 952 } |
952 } |
| 953 else { |
953 else { |
| 954 xfer->fd = fd; |
954 xfer->fd = fd; |