Skip to content

Commit

Permalink
Add "--network" option in ideviceactivation tool to support network d…
Browse files Browse the repository at this point in the history
…evices
  • Loading branch information
FunkyM committed Jun 4, 2020
1 parent 03c9bba commit c3be9b9
Showing 1 changed file with 13 additions and 13 deletions.
26 changes: 13 additions & 13 deletions tools/ideviceactivation.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ static void print_usage(int argc, char **argv)
printf("The following OPTIONS are accepted:\n");
printf(" -d, --debug\t\tenable communication debugging\n");
printf(" -u, --udid UDID\ttarget specific device by UDID\n");
printf(" -n, --network\t\tconnect to network device even if available via USB\n");
printf(" -b, --batch\t\texplicitly run in non-interactive mode (default: auto-detect)\n");
printf(" -s, --service URL\tuse activation webservice at URL instead of default\n");
printf(" -v, --version\t\tprint version information and exit\n");
Expand Down Expand Up @@ -138,6 +139,7 @@ int main(int argc, char *argv[])
int i;
int interactive = 1;
int result = EXIT_FAILURE;
enum idevice_options lookup_opts = IDEVICE_LOOKUP_USBMUX | IDEVICE_LOOKUP_NETWORK;

typedef enum {
OP_NONE = 0, OP_ACTIVATE, OP_DEACTIVATE, OP_GETSTATE
Expand All @@ -163,6 +165,10 @@ int main(int argc, char *argv[])
udid = argv[i];
continue;
}
else if (!strcmp(argv[i], "-n") || !strcmp(argv[i], "--network")) {
lookup_opts |= IDEVICE_LOOKUP_PREFER_NETWORK;
continue;
}
else if (!strcmp(argv[i], "-s") || !strcmp(argv[i], "--service")) {
i++;
if (!argv[i]) {
Expand Down Expand Up @@ -213,20 +219,14 @@ int main(int argc, char *argv[])
return EXIT_FAILURE;
}

if (udid) {
ret = idevice_new(&device, udid);
if (ret != IDEVICE_E_SUCCESS) {
printf("No device found with UDID %s, is it plugged in?\n", udid);
return EXIT_FAILURE;
}
}
else
{
ret = idevice_new(&device, NULL);
if (ret != IDEVICE_E_SUCCESS) {
printf("No device found, is it plugged in?\n");
return EXIT_FAILURE;
ret = idevice_new_with_options(&device, udid, lookup_opts);
if (ret != IDEVICE_E_SUCCESS) {
if (udid) {
printf("ERROR: Device %s not found!\n", udid);
} else {
printf("ERROR: No device found!\n");
}
return EXIT_FAILURE;
}

if (LOCKDOWN_E_SUCCESS != lockdownd_client_new_with_handshake(device, &lockdown, "ideviceactivation")) {
Expand Down

0 comments on commit c3be9b9

Please sign in to comment.