diff options
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 24 |
1 files changed, 12 insertions, 12 deletions
| @@ -282,7 +282,7 @@ static int usbmuxd_handleConnectResult(struct client_data *cdata) | |||
| 282 | } | 282 | } |
| 283 | } else { | 283 | } else { |
| 284 | result = 0; | 284 | result = 0; |
| 285 | err = iphone_mux_recv_timeout(cdata->muxclient, buffer, maxlen, &rlen, 1000); | 285 | err = iphone_mux_recv_timeout(cdata->muxclient, buffer, maxlen, &rlen, 100); |
| 286 | if (err != 0) { | 286 | if (err != 0) { |
| 287 | fprintf(stderr, "%s: encountered USB read error: %d\n", __func__, err); | 287 | fprintf(stderr, "%s: encountered USB read error: %d\n", __func__, err); |
| 288 | usbmuxd_send_result(cdata->socket, cdata->tag, -err); | 288 | usbmuxd_send_result(cdata->socket, cdata->tag, -err); |
| @@ -460,7 +460,7 @@ static void *usbmuxd_bulk_reader_thread(void *arg) | |||
| 460 | static void *usbmuxd_client_init_thread(void *arg) | 460 | static void *usbmuxd_client_init_thread(void *arg) |
| 461 | { | 461 | { |
| 462 | struct client_data *cdata; | 462 | struct client_data *cdata; |
| 463 | struct usbmuxd_hello *hello = NULL; | 463 | struct usbmuxd_scan_request *s_req = NULL; |
| 464 | struct usbmuxd_device_info_request dev_info_req; | 464 | struct usbmuxd_device_info_request dev_info_req; |
| 465 | struct usbmuxd_connect_request *c_req = NULL; | 465 | struct usbmuxd_connect_request *c_req = NULL; |
| 466 | 466 | ||
| @@ -487,25 +487,25 @@ static void *usbmuxd_client_init_thread(void *arg) | |||
| 487 | 487 | ||
| 488 | fprintf(stderr, "%s: started (fd=%d)\n", __func__, cdata->socket); | 488 | fprintf(stderr, "%s: started (fd=%d)\n", __func__, cdata->socket); |
| 489 | 489 | ||
| 490 | if ((recv_len = usbmuxd_get_request(cdata->socket, (void**)&hello, 0)) <= 0) { | 490 | if ((recv_len = usbmuxd_get_request(cdata->socket, (void**)&s_req, 0)) <= 0) { |
| 491 | fprintf(stderr, "%s: No Hello packet received, error %s\n", __func__, strerror(errno)); | 491 | fprintf(stderr, "%s: No Hello packet received, error %s\n", __func__, strerror(errno)); |
| 492 | goto leave; | 492 | goto leave; |
| 493 | } | 493 | } |
| 494 | 494 | ||
| 495 | if ((recv_len == sizeof(struct usbmuxd_hello)) && (hello->header.length == sizeof(struct usbmuxd_hello)) | 495 | if ((recv_len == sizeof(struct usbmuxd_scan_request)) && (s_req->header.length == sizeof(struct usbmuxd_scan_request)) |
| 496 | && (hello->header.reserved == 0) && (hello->header.type == USBMUXD_HELLO)) { | 496 | && (s_req->header.reserved == 0) && (s_req->header.type == USBMUXD_SCAN)) { |
| 497 | // send success response | 497 | // send success response |
| 498 | fprintf(stderr, "%s: Got Hello packet!\n", __func__); | 498 | fprintf(stderr, "%s: Got Hello packet!\n", __func__); |
| 499 | usbmuxd_send_result(cdata->socket, hello->header.tag, 0); | 499 | usbmuxd_send_result(cdata->socket, s_req->header.tag, 0); |
| 500 | } else if ((recv_len == sizeof(struct usbmuxd_connect_request)) && (hello->header.type == USBMUXD_CONNECT)) { | 500 | } else if ((recv_len == sizeof(struct usbmuxd_connect_request)) && (s_req->header.type == USBMUXD_CONNECT)) { |
| 501 | c_req = (struct usbmuxd_connect_request*)hello; | 501 | c_req = (struct usbmuxd_connect_request*)s_req; |
| 502 | hello = NULL; | 502 | s_req = NULL; |
| 503 | goto connect; | 503 | goto connect; |
| 504 | } else { | 504 | } else { |
| 505 | // send error response and exit | 505 | // send error response and exit |
| 506 | fprintf(stderr, "%s: Invalid Hello packet received.\n", __func__); | 506 | fprintf(stderr, "%s: Invalid Hello packet received.\n", __func__); |
| 507 | // TODO is this required?! | 507 | // TODO is this required?! |
| 508 | usbmuxd_send_result(cdata->socket, hello->header.tag, EINVAL); | 508 | usbmuxd_send_result(cdata->socket, s_req->header.tag, EINVAL); |
| 509 | goto leave; | 509 | goto leave; |
| 510 | } | 510 | } |
| 511 | 511 | ||
| @@ -698,8 +698,8 @@ connect: | |||
| 698 | leave: | 698 | leave: |
| 699 | fprintf(stderr, "%s: terminating\n", __func__); | 699 | fprintf(stderr, "%s: terminating\n", __func__); |
| 700 | 700 | ||
| 701 | if (hello) { | 701 | if (s_req) { |
| 702 | free(hello); | 702 | free(s_req); |
| 703 | } | 703 | } |
| 704 | if (c_req) { | 704 | if (c_req) { |
| 705 | free(c_req); | 705 | free(c_req); |
