8 _method_success_check(void *data, DBusMessage *msg, DBusError *error)
10 const char *name = data;
12 if ((!error) || (!dbus_error_is_set(error)))
14 printf("SUCCESS: method %s() finished successfully.\n", name);
18 printf("FAILURE: method %s() finished with error: %s %s\n",
19 name, error->name, error->message);
20 dbus_error_free(error);
24 _elements_print(E_Connman_Element **elements, unsigned int count)
27 for (i = 0; i < count; i++)
29 printf("--- element %d:\n", i);
30 e_connman_element_print(stdout, elements[i]);
33 printf("END: all elements count = %u\n", count);
37 _strings_print(const char **strings, unsigned int count)
40 for (i = 0; i < count; i++)
41 printf("--- strings %d: \"%s\"\n", i, strings[i]);
43 printf("END: all strings count = %u\n", count);
47 _on_element_add(void *data, int type, void *info)
49 E_Connman_Element *element = info;
50 printf(">>> %s\n", element->path);
55 _on_element_del(void *data, int type, void *info)
57 E_Connman_Element *element = info;
58 printf("<<< %s\n", element->path);
63 _on_element_updated(void *data, int type, void *info)
65 E_Connman_Element *element = info;
66 printf("!!! %s\n", element->path);
67 e_connman_element_print(stderr, element);
72 _on_cmd_quit(char *cmd, char *args)
74 fputs("Bye!\n", stderr);
75 ecore_main_loop_quit();
80 _on_cmd_sync(char *cmd, char *args)
82 e_connman_manager_sync_elements();
104 _on_cmd_get_all(char *cmd, char *args)
106 E_Connman_Element **elements;
117 ret = e_connman_elements_get_all_type(type, &count, &elements);
119 ret = e_connman_elements_get_all(&count, &elements);
122 fputs("ERROR: could not get elements\n", stderr);
125 printf("BEG: all elements type=%s count = %d\n", type, count);
126 _elements_print(elements, count);
132 static E_Connman_Element *
133 _element_from_args(char *args, char **next_args)
135 E_Connman_Element *element;
139 fputs("ERROR: missing element path\n", stderr);
144 *next_args = _tok(args);
145 element = e_connman_element_get(args);
147 fprintf(stderr, "ERROR: no element called \"%s\".\n", args);
153 _on_cmd_print(char *cmd, char *args)
156 E_Connman_Element *element = _element_from_args(args, &next_args);
158 e_connman_element_print(stdout, element);
163 _on_cmd_get_properties(char *cmd, char *args)
166 E_Connman_Element *element = _element_from_args(args, &next_args);
168 e_connman_element_properties_sync(element);
173 _on_cmd_property_set(char *cmd, char *args)
175 char *next_args, *name, *p;
176 E_Connman_Element *element = _element_from_args(args, &next_args);
188 fputs("ERROR: missing parameters name, type and value.\n", stderr);
196 fputs("ERROR: missing parameters type and value.\n", stderr);
203 fputs("ERROR: missing parameter value.\n", stderr);
210 case DBUS_TYPE_BOOLEAN:
211 vlong = !!atol(next_args);
213 fprintf(stderr, "DBG: boolean is: %ld\n", vlong);
215 case DBUS_TYPE_UINT16:
216 vu16 = strtol(next_args, &p, 0);
219 fprintf(stderr, "ERROR: invalid number \"%s\".\n", next_args);
223 fprintf(stderr, "DBG: u16 is: %hu\n", vu16);
225 case DBUS_TYPE_UINT32:
226 vu32 = strtol(next_args, &p, 0);
229 fprintf(stderr, "ERROR: invalid number \"%s\".\n", next_args);
233 fprintf(stderr, "DBG: u16 is: %u\n", vu32);
235 case DBUS_TYPE_STRING:
236 case DBUS_TYPE_OBJECT_PATH:
237 p = next_args + strlen(next_args);
240 while (p > next_args && isspace(*p))
244 fprintf(stderr, "ERROR: invalid string \"%s\".\n", next_args);
248 fprintf(stderr, "DBG: string is: \"%s\"\n", next_args);
251 fprintf(stderr, "ERROR: don't know how to parse type '%c' (%d)\n",
256 fprintf(stderr, "set_property %s [%p] %s %c %p...\n",
257 args, element, name, type, value);
258 if (!e_connman_element_property_set(element, name, type, value))
259 fputs("ERROR: error setting property.\n", stderr);
265 /* Manager Commands */
268 _on_cmd_manager_get(char *cmd, char *args)
270 E_Connman_Element *element;
271 element = e_connman_manager_get();
272 e_connman_element_print(stderr, element);
277 _on_cmd_manager_get_profiles(char *cmd, char *args)
280 E_Connman_Element **profiles;
282 if (!e_connman_manager_profiles_get(&count, &profiles))
284 fputs("ERROR: can't get profiles\n", stderr);
287 printf("BEG: all manager profiles elements count = %d\n", count);
288 _elements_print(profiles, count);
293 _on_cmd_manager_get_devices(char *cmd, char *args)
296 E_Connman_Element **devices;
298 if (!e_connman_manager_devices_get(&count, &devices))
300 fputs("ERROR: can't get devices\n", stderr);
303 printf("BEG: all manager devices elements count = %d\n", count);
304 _elements_print(devices, count);
309 _on_cmd_manager_get_services(char *cmd, char *args)
312 E_Connman_Element **services;
314 if (!e_connman_manager_services_get(&count, &services))
316 fputs("ERROR: can't get services\n", stderr);
319 printf("BEG: all manager services elements count = %d\n", count);
320 _elements_print(services, count);
325 _on_cmd_manager_register_agent(char *cmd, char *args)
331 fputs("ERROR: missing the object path\n", stderr);
336 if (e_connman_manager_agent_register
337 (path, _method_success_check, "manager_register_agent"))
338 printf(":::Registering agent %s...\n", path);
340 fprintf(stderr, "ERROR: can't register agent %s\n", path);
346 _on_cmd_manager_unregister_agent(char *cmd, char *args)
352 fputs("ERROR: missing the object path\n", stderr);
357 if (e_connman_manager_agent_unregister
358 (path, _method_success_check, "manager_unregister_agent"))
359 printf(":::Unregistering agent %s...\n", path);
361 fprintf(stderr, "ERROR: can't unregister agent %s\n", path);
367 _on_cmd_manager_get_state(char *cmd, char *args)
370 if (e_connman_manager_state_get(&state))
371 printf(":::Manager state = \"%s\"\n", state);
373 fputs("ERROR: can't get manager state\n", stderr);
378 _on_cmd_manager_get_offline_mode(char *cmd, char *args)
381 if (e_connman_manager_offline_mode_get(&offline))
382 printf(":::Manager Offline Mode = %hhu\n", offline);
384 fputs("ERROR: can't get manager offline mode\n", stderr);
389 _on_cmd_manager_set_offline_mode(char *cmd, char *args)
394 fputs("ERROR: missing the offline mode value\n", stderr);
398 offline = !!atol(args);
399 if (e_connman_manager_offline_mode_set
400 (offline, _method_success_check, "manager_set_offline_mode"))
402 printf(":::Manager Offline Mode set to %hhu\n", offline);
404 fputs("ERROR: can't set manager offline mode\n", stderr);
409 _on_cmd_manager_request_scan(char *cmd, char *args)
417 if (e_connman_manager_request_scan
418 (args, _method_success_check, "manager_request_scan"))
419 printf(":::Manager Request Scan for %s\n", args[0] ? args : "<all>");
421 fputs("ERROR: can't request scan on manager\n", stderr);
426 _on_cmd_manager_technology_enable(char *cmd, char *args)
430 fputs("ERROR: missing the technology type\n", stderr);
435 if (e_connman_manager_technology_enable
436 (args, _method_success_check, "manager_technology_enable"))
437 printf(":::Manager Enable Technology %s\n", args);
439 fputs("ERROR: can't enable technology on manager\n", stderr);
444 _on_cmd_manager_technology_disable(char *cmd, char *args)
448 fputs("ERROR: missing the technology type\n", stderr);
453 if (e_connman_manager_technology_disable
454 (args, _method_success_check, "manager_technology_disable"))
455 printf(":::Manager Disable Technology %s\n", args);
457 fputs("ERROR: can't disable technology on manager\n", stderr);
462 _on_cmd_manager_get_technologies_available(char *cmd, char *args)
464 const char **strings;
467 if (!e_connman_manager_technologies_available_get(&count, &strings))
468 fputs("ERROR: can't get available technologies\n", stderr);
471 printf("BEG: available technologies count = %u\n", count);
472 _strings_print(strings, count);
479 _on_cmd_manager_get_technologies_enabled(char *cmd, char *args)
481 const char **strings;
484 if (!e_connman_manager_technologies_enabled_get(&count, &strings))
485 fputs("ERROR: can't get enabled technologies\n", stderr);
488 printf("BEG: enabled technologies count = %u\n", count);
489 _strings_print(strings, count);
496 _on_cmd_manager_get_technologies_connected(char *cmd, char *args)
498 const char **strings;
501 if (!e_connman_manager_technologies_connected_get(&count, &strings))
502 fputs("ERROR: can't get connected technologies\n", stderr);
505 printf("BEG: connected technologies count = %u\n", count);
506 _strings_print(strings, count);
513 _on_cmd_manager_profile_remove(char *cmd, char *args)
515 E_Connman_Element *e;
519 fputs("ERROR: missing the profile path\n", stderr);
524 e = e_connman_profile_get(args);
525 if (e_connman_manager_profile_remove
526 (e, _method_success_check, "manager_profile_remove"))
527 printf(":::Manager Remove Profile %s\n", args);
529 fputs("ERROR: can't remove profile from manager\n", stderr);
534 _on_cmd_manager_profile_get_active(char *cmd, char *args)
536 E_Connman_Element *e;
538 if (!e_connman_manager_profile_active_get(&e))
539 fputs("ERROR: can't active_get profile from manager\n", stderr);
541 e_connman_element_print(stderr, e);
546 _on_cmd_manager_profile_set_active(char *cmd, char *args)
548 E_Connman_Element *e;
552 fputs("ERROR: missing the profile path\n", stderr);
557 e = e_connman_profile_get(args);
558 if (e_connman_manager_profile_active_set
559 (e, _method_success_check, "manager_profile_set_active"))
560 printf(":::Manager Active Profile set to %s\n", args);
562 fputs("ERROR: can't set active profile\n", stderr);
566 /* Device Commands */
568 _on_cmd_device_propose_scan(char *cmd, char *args)
571 E_Connman_Element *e;
575 fputs("ERROR: missing the device path\n", stderr);
581 e = e_connman_device_get(path);
582 if (e_connman_device_propose_scan
583 (e, _method_success_check, "device_propose_scan"))
584 printf(":::Proposing scan %s...\n", path);
586 fputs("ERROR: can't propose scan\n", stderr);
591 _on_cmd_device_get_address(char *cmd, char *args)
593 const char *address, *path;
594 E_Connman_Element *e;
598 fputs("ERROR: missing the device path\n", stderr);
604 e = e_connman_device_get(path);
605 if (e_connman_device_address_get(e, &address))
606 printf(":::Device %s Address = \"%s\"\n", path, address);
608 fputs("ERROR: can't get device address\n", stderr);
613 _on_cmd_device_get_name(char *cmd, char *args)
615 const char *name, *path;
616 E_Connman_Element *e;
620 fputs("ERROR: missing the device path\n", stderr);
626 e = e_connman_device_get(path);
627 if (e_connman_device_name_get(e, &name))
628 printf(":::Device %s Name = \"%s\"\n", path, name);
630 fputs("ERROR: can't get device name\n", stderr);
635 _on_cmd_device_get_type(char *cmd, char *args)
637 const char *type, *path;
638 E_Connman_Element *e;
642 fputs("ERROR: missing the device path\n", stderr);
648 e = e_connman_device_get(path);
649 if (e_connman_device_type_get(e, &type))
650 printf(":::Device %s Type = \"%s\"\n", path, type);
652 fputs("ERROR: can't get device type\n", stderr);
657 _on_cmd_device_get_interface(char *cmd, char *args)
659 const char *interface, *path;
660 E_Connman_Element *e;
664 fputs("ERROR: missing the device path\n", stderr);
670 e = e_connman_device_get(path);
671 if (e_connman_device_interface_get(e, &interface))
672 printf(":::Device %s Interface = \"%s\"\n", path, interface);
674 fputs("ERROR: can't get device interface\n", stderr);
679 _on_cmd_device_get_powered(char *cmd, char *args)
683 E_Connman_Element *e;
687 fputs("ERROR: missing the device path\n", stderr);
693 e = e_connman_device_get(path);
694 if (e_connman_device_powered_get(e, &powered))
695 printf(":::Device %s Powered = %hhu\n", path, powered);
697 fputs("ERROR: can't get device powered\n", stderr);
702 _on_cmd_device_set_powered(char *cmd, char *args)
704 char *device_path, *next_args;
706 E_Connman_Element *e;
710 fputs("ERROR: missing the device path\n", stderr);
714 next_args = _tok(args);
717 fputs("ERROR: missing the powered value\n", stderr);
720 powered = !!atol(next_args);
722 e = e_connman_device_get(device_path);
723 if (e_connman_device_powered_set
724 (e, powered, _method_success_check, "device_set_powered"))
725 printf(":::Device %s powered set to %hhu\n", device_path, powered);
727 fputs("ERROR: can't set device powered\n", stderr);
732 _on_cmd_device_get_scan_interval(char *cmd, char *args)
735 unsigned short scan_interval;
736 E_Connman_Element *e;
740 fputs("ERROR: missing the device path\n", stderr);
746 e = e_connman_device_get(path);
747 if (e_connman_device_scan_interval_get(e, &scan_interval))
748 printf(":::Device %s ScanInterval = %hu\n", path, scan_interval);
750 fputs("ERROR: can't get device scan interval\n", stderr);
755 _on_cmd_device_set_scan_interval(char *cmd, char *args)
757 char *device_path, *next_args, *p;
758 unsigned short scan_interval;
759 E_Connman_Element *e;
763 fputs("ERROR: missing the device path\n", stderr);
767 next_args = _tok(args);
770 fputs("ERROR: missing the scan interval value\n", stderr);
773 scan_interval = strtol(next_args, &p, 0);
776 fprintf(stderr, "ERROR: invalid number \"%s\".\n", next_args);
780 e = e_connman_device_get(device_path);
781 if (e_connman_device_scan_interval_set
782 (e, scan_interval, _method_success_check, "device_set_scan_interval"))
783 printf(":::Device %s scan interval set to %hu\n", device_path, scan_interval);
785 fputs("ERROR: can't set device scan interval\n", stderr);
790 _on_cmd_device_get_scanning(char *cmd, char *args)
794 E_Connman_Element *e;
798 fputs("ERROR: missing the device path\n", stderr);
804 e = e_connman_device_get(path);
805 if (e_connman_device_scanning_get(e, &scanning))
806 printf(":::Device %s Scanning = %hhu\n", path, scanning);
808 fputs("ERROR: can't get device scanning\n", stderr);
813 _on_cmd_device_get_networks(char *cmd, char *args)
815 E_Connman_Element **networks;
818 E_Connman_Element *e;
822 fputs("ERROR: missing the device path\n", stderr);
828 e = e_connman_device_get(path);
829 if (!e_connman_device_networks_get(e, &count, &networks))
831 fputs("ERROR: can't get networks\n", stderr);
835 printf("BEG: all device network elements count = %d\n", count);
836 _elements_print(networks, count);
840 /* Profile Commands */
843 _on_cmd_profile_get_name(char *cmd, char *args)
845 const char *name, *path;
846 E_Connman_Element *e;
850 fputs("ERROR: missing the profile path\n", stderr);
856 e = e_connman_profile_get(path);
857 if (e_connman_profile_name_get(e, &name))
858 printf(":::Profile %s Name = \"%s\"\n", path, name);
860 fputs("ERROR: can't get profile name\n", stderr);
865 _on_cmd_profile_set_name(char *cmd, char *args)
867 char *path, *next_args;
868 E_Connman_Element *e;
872 fputs("ERROR: missing the profile path\n", stderr);
876 next_args = _tok(args);
879 fputs("ERROR: missing the offline mode value\n", stderr);
884 e = e_connman_profile_get(path);
885 if (e_connman_profile_name_set
886 (e, next_args, _method_success_check, "profile_set_name"))
887 printf(":::Profile %s Name set to %s\n", path, next_args);
889 fputs("ERROR: can't set profile name\n", stderr);
894 _on_cmd_profile_get_offline_mode(char *cmd, char *args)
898 E_Connman_Element *e;
902 fputs("ERROR: missing the profile path\n", stderr);
908 e = e_connman_profile_get(path);
909 if (e_connman_profile_offline_mode_get(e, &offline))
910 printf(":::Profile %s Offline Mode = %hhu\n", path, offline);
912 fputs("ERROR: can't get profile offline mode\n", stderr);
917 _on_cmd_profile_set_offline_mode(char *cmd, char *args)
919 char *path, *next_args;
921 E_Connman_Element *e;
925 fputs("ERROR: missing the profile path\n", stderr);
929 next_args = _tok(args);
932 fputs("ERROR: missing the offline mode value\n", stderr);
936 offline = !!atol(next_args);
938 e = e_connman_profile_get(path);
939 if (e_connman_profile_offline_mode_set
940 (e, offline, _method_success_check, "profile_set_offline_mode"))
941 printf(":::Profile %s Offline Mode set to %hhu\n", path, offline);
943 fputs("ERROR: can't set profile offline mode\n", stderr);
948 _on_cmd_profile_get_services(char *cmd, char *args)
950 E_Connman_Element **services;
951 E_Connman_Element *e;
957 fputs("ERROR: missing the profile path\n", stderr);
963 e = e_connman_profile_get(path);
964 if (!e_connman_profile_services_get(e, &count, &services))
966 fputs("ERROR: can't get services\n", stderr);
969 printf("BEG: all profile services count = %d\n", count);
970 _elements_print(services, count);
975 /* Network Commands */
978 _on_cmd_network_get_address(char *cmd, char *args)
980 const char *address, *path;
981 E_Connman_Element *e;
985 fputs("ERROR: missing the network path\n", stderr);
991 e = e_connman_network_get(path);
992 if (e_connman_network_address_get(e, &address))
993 printf(":::Network %s Address = \"%s\"\n", path, address);
995 fputs("ERROR: can't get network address\n", stderr);
1000 _on_cmd_network_get_name(char *cmd, char *args)
1002 const char *name, *path;
1003 E_Connman_Element *e;
1007 fputs("ERROR: missing the network path\n", stderr);
1013 e = e_connman_network_get(path);
1014 if (e_connman_network_name_get(e, &name))
1015 printf(":::Network %s Name = \"%s\"\n", path, name);
1017 fputs("ERROR: can't get network name\n", stderr);
1022 _on_cmd_network_get_connected(char *cmd, char *args)
1026 E_Connman_Element *e;
1030 fputs("ERROR: missing the network path\n", stderr);
1036 e = e_connman_network_get(path);
1037 if (e_connman_network_connected_get(e, &connected))
1038 printf(":::Network %s Connected = %hhu\n", path, connected);
1040 fputs("ERROR: can't get network connected\n", stderr);
1045 _on_cmd_network_get_strength(char *cmd, char *args)
1048 unsigned char strength;
1049 E_Connman_Element *e;
1053 fputs("ERROR: missing the network path\n", stderr);
1059 e = e_connman_network_get(path);
1060 if (e_connman_network_strength_get(e, &strength))
1061 printf(":::Network %s Strength = %#02hhx (%d)\n", path, strength, strength);
1063 fputs("ERROR: can't get network strength\n", stderr);
1068 _on_cmd_network_get_frequency(char *cmd, char *args)
1071 unsigned short frequency;
1072 E_Connman_Element *e;
1076 fputs("ERROR: missing the network path\n", stderr);
1082 e = e_connman_network_get(path);
1083 if (e_connman_network_frequency_get(e, &frequency))
1084 printf(":::Network %s Frequency = %#04hx (%d)\n", path, frequency, frequency);
1086 fputs("ERROR: can't get network frequency\n", stderr);
1091 _on_cmd_network_get_device(char *cmd, char *args)
1093 E_Connman_Element *e, *device;
1098 fputs("ERROR: missing the network path\n", stderr);
1104 e = e_connman_network_get(path);
1105 if (!e_connman_network_device_get(e, &device))
1106 fputs("ERROR: can't get network device\n", stderr);
1108 e_connman_element_print(stderr, device);
1113 _on_cmd_network_get_wifi_ssid(char *cmd, char *args)
1115 unsigned char *bytes;
1117 unsigned int i, count;
1118 E_Connman_Element *e;
1122 fputs("ERROR: missing the network path\n", stderr);
1128 e = e_connman_network_get(path);
1129 if (e_connman_network_wifi_ssid_get(e, &count, &bytes))
1131 printf(":::Network %s Wifi SSID = ", path);
1132 for (i = 0; i < count; i++)
1133 printf("%#02hhx (\"%c\"), ", bytes[i], bytes[i]);
1137 fputs("ERROR: can't get network wifi ssid\n", stderr);
1142 _on_cmd_network_get_wifi_mode(char *cmd, char *args)
1144 const char *wifi_mode, *path;
1145 E_Connman_Element *e;
1149 fputs("ERROR: missing the network path\n", stderr);
1155 e = e_connman_network_get(path);
1156 if (e_connman_network_wifi_mode_get(e, &wifi_mode))
1157 printf(":::Network %s Wifi Mode = \"%s\"\n", path, wifi_mode);
1159 fputs("ERROR: can't get network wifi mode\n", stderr);
1164 _on_cmd_network_get_wifi_security(char *cmd, char *args)
1166 const char *wifi_security, *path;
1167 E_Connman_Element *e;
1171 fputs("ERROR: missing the network path\n", stderr);
1177 e = e_connman_network_get(path);
1178 if (e_connman_network_wifi_security_get(e, &wifi_security))
1179 printf(":::Network %s Wifi Security = \"%s\"\n", path, wifi_security);
1181 fputs("ERROR: can't get network wifi security\n", stderr);
1186 _on_cmd_network_get_wifi_passphrase(char *cmd, char *args)
1188 const char *wifi_passphrase, *path;
1189 E_Connman_Element *e;
1193 fputs("ERROR: missing the network path\n", stderr);
1199 e = e_connman_network_get(path);
1200 if (e_connman_network_wifi_passphrase_get(e, &wifi_passphrase))
1201 printf(":::Network %s Wifi Passphrase = \"%s\"\n", path, wifi_passphrase);
1203 fputs("ERROR: can't get network wifi passphrase\n", stderr);
1208 _on_cmd_network_get_wifi_channel(char *cmd, char *args)
1211 E_Connman_Element *e;
1212 unsigned short wifi_channel;
1216 fputs("ERROR: missing the network path\n", stderr);
1222 e = e_connman_network_get(path);
1223 if (e_connman_network_wifi_channel_get(e, &wifi_channel))
1224 printf(":::Network %s Wifi Channel = %#02hx (%d)\n", path, wifi_channel, wifi_channel);
1226 fputs("ERROR: can't get network wifi channel\n", stderr);
1231 _on_cmd_network_get_wifi_eap(char *cmd, char *args)
1233 const char *wifi_eap, *path;
1234 E_Connman_Element *e;
1238 fputs("ERROR: missing the network path\n", stderr);
1244 e = e_connman_network_get(path);
1245 if (e_connman_network_wifi_eap_get(e, &wifi_eap))
1246 printf(":::Network %s Wifi EAP = \"%s\"\n", path, wifi_eap);
1248 fputs("ERROR: can't get network wifi eap\n", stderr);
1252 /* Services Commands */
1254 _on_cmd_service_connect(char *cmd, char *args)
1257 E_Connman_Element *e;
1261 fputs("ERROR: missing the service path\n", stderr);
1267 e = e_connman_service_get(path);
1268 if (e_connman_service_connect
1269 (e, _method_success_check, "service_connect"))
1270 printf(":::Connecting to Service %s...\n", path);
1272 fputs("ERROR: can't connect to service\n", stderr);
1277 _on_cmd_service_disconnect(char *cmd, char *args)
1280 E_Connman_Element *e;
1284 fputs("ERROR: missing the service path\n", stderr);
1290 e = e_connman_service_get(path);
1291 if (e_connman_service_disconnect
1292 (e, _method_success_check, "service_disconnect"))
1293 printf(":::Disconnecting Service %s...\n", path);
1295 fputs("ERROR: can't disconnect service\n", stderr);
1300 _on_cmd_service_remove(char *cmd, char *args)
1303 E_Connman_Element *e;
1307 fputs("ERROR: missing the service path\n", stderr);
1313 e = e_connman_service_get(path);
1314 if (e_connman_service_remove
1315 (e, _method_success_check, "service_remove"))
1316 printf(":::Removing Service %s...\n", path);
1318 fputs("ERROR: can't remove service\n", stderr);
1323 _on_cmd_service_move_before(char *cmd, char *args)
1325 char *path, *service_path;
1326 E_Connman_Element *e;
1330 fputs("ERROR: missing the service path\n", stderr);
1333 service_path = args;
1338 fputs("ERROR: missing the object service\n", stderr);
1343 e = e_connman_service_get(service_path);
1344 if (e_connman_service_move_before
1345 (e, path, _method_success_check, "service_move_before"))
1346 printf(":::Moving before %s...\n", path);
1348 fputs("ERROR: can't move before\n", stderr);
1353 _on_cmd_service_move_after(char *cmd, char *args)
1355 char *path, *service_path;
1356 E_Connman_Element *e;
1360 fputs("ERROR: missing the service path\n", stderr);
1363 service_path = args;
1368 fputs("ERROR: missing the object service\n", stderr);
1373 e = e_connman_service_get(service_path);
1374 if (e_connman_service_move_after
1375 (e, path, _method_success_check, "service_move_after"))
1376 printf(":::Moving after %s...\n", path);
1378 fputs("ERROR: can't move after\n", stderr);
1383 _on_cmd_service_get_state(char *cmd, char *args)
1385 const char *state, *path;
1386 E_Connman_Element *e;
1390 fputs("ERROR: missing the service path\n", stderr);
1396 e = e_connman_service_get(path);
1397 if (e_connman_service_state_get(e, &state))
1398 printf(":::Service %s State = \"%s\"\n", path, state);
1400 fputs("ERROR: can't get service state\n", stderr);
1405 _on_cmd_service_get_error(char *cmd, char *args)
1407 const char *error, *path;
1408 E_Connman_Element *e;
1412 fputs("ERROR: missing the service path\n", stderr);
1418 e = e_connman_service_get(path);
1419 if (e_connman_service_error_get(e, &error))
1420 printf(":::Service %s Error = \"%s\"\n", path, error);
1422 fputs("ERROR: can't get service error\n", stderr);
1427 _on_cmd_service_get_name(char *cmd, char *args)
1429 const char *name, *path;
1430 E_Connman_Element *e;
1434 fputs("ERROR: missing the service path\n", stderr);
1440 e = e_connman_service_get(path);
1441 if (e_connman_service_name_get(e, &name))
1442 printf(":::Service %s Name = \"%s\"\n", path, name);
1444 fputs("ERROR: can't get service name\n", stderr);
1449 _on_cmd_service_get_type(char *cmd, char *args)
1451 const char *type, *path;
1452 E_Connman_Element *e;
1456 fputs("ERROR: missing the service path\n", stderr);
1462 e = e_connman_service_get(path);
1463 if (e_connman_service_type_get(e, &type))
1464 printf(":::Service %s Type = \"%s\"\n", path, type);
1466 fputs("ERROR: can't get service type\n", stderr);
1471 _on_cmd_service_get_mode(char *cmd, char *args)
1473 const char *mode, *path;
1474 E_Connman_Element *e;
1478 fputs("ERROR: missing the service path\n", stderr);
1484 e = e_connman_service_get(path);
1485 if (e_connman_service_mode_get(e, &mode))
1486 printf(":::Service %s Mode = \"%s\"\n", path, mode);
1488 fputs("ERROR: can't get service mode\n", stderr);
1493 _on_cmd_service_get_security(char *cmd, char *args)
1495 const char *security, *path;
1496 E_Connman_Element *e;
1500 fputs("ERROR: missing the service path\n", stderr);
1506 e = e_connman_service_get(path);
1507 if (e_connman_service_security_get(e, &security))
1508 printf(":::Service %s Security = \"%s\"\n", path, security);
1510 fputs("ERROR: can't get service security\n", stderr);
1515 _on_cmd_service_get_passphrase(char *cmd, char *args)
1517 const char *passphrase, *path;
1518 E_Connman_Element *e;
1522 fputs("ERROR: missing the service path\n", stderr);
1528 e = e_connman_service_get(path);
1529 if (e_connman_service_passphrase_get(e, &passphrase))
1530 printf(":::Service %s Passphrase = \"%s\"\n", path, passphrase);
1532 fputs("ERROR: can't get service passphrase\n", stderr);
1537 _on_cmd_service_set_passphrase(char *cmd, char *args)
1539 char *passphrase, *path;
1540 E_Connman_Element *e;
1544 fputs("ERROR: missing the service path\n", stderr);
1548 passphrase = _tok(args);
1552 fputs("ERROR: missing the passphrase value\n", stderr);
1557 e = e_connman_service_get(path);
1558 if (e_connman_service_passphrase_set
1559 (e, passphrase, _method_success_check, "service_set_passphrase"))
1560 printf(":::Service %s passphrase set to \"%s\"\n", path, passphrase);
1562 fputs("ERROR: can't set service passphrase\n", stderr);
1567 _on_cmd_service_get_passphrase_required(char *cmd, char *args)
1571 E_Connman_Element *e;
1575 fputs("ERROR: missing the service path\n", stderr);
1581 e = e_connman_service_get(path);
1582 if (e_connman_service_passphrase_required_get(e, &passphrase))
1583 printf(":::Service %s Passphrase Required = %hhu\n", path, passphrase);
1585 fputs("ERROR: can't get service passphrase required\n", stderr);
1590 _on_cmd_service_get_strength(char *cmd, char *args)
1593 unsigned char strength;
1594 E_Connman_Element *e;
1598 fputs("ERROR: missing the service path\n", stderr);
1604 e = e_connman_service_get(path);
1605 if (e_connman_service_strength_get(e, &strength))
1606 printf(":::Service %s Strength = %#02hhx (%d)\n", path, strength, strength);
1608 fputs("ERROR: can't get service strength\n", stderr);
1613 _on_cmd_service_get_favorite(char *cmd, char *args)
1617 E_Connman_Element *e;
1621 fputs("ERROR: missing the service path\n", stderr);
1627 e = e_connman_service_get(path);
1628 if (e_connman_service_favorite_get(e, &favorite))
1629 printf(":::Service %s Favorite = %hhu\n", path, favorite);
1631 fputs("ERROR: can't get service favorite\n", stderr);
1636 _on_cmd_service_get_immutable(char *cmd, char *args)
1640 E_Connman_Element *e;
1644 fputs("ERROR: missing the service path\n", stderr);
1650 e = e_connman_service_get(path);
1651 if (e_connman_service_immutable_get(e, &immutable))
1652 printf(":::Service %s Immutable = %hhu\n", path, immutable);
1654 fputs("ERROR: can't get service immutable\n", stderr);
1659 _on_cmd_service_get_auto_connect(char *cmd, char *args)
1663 E_Connman_Element *e;
1667 fputs("ERROR: missing the service path\n", stderr);
1673 e = e_connman_service_get(path);
1674 if (e_connman_service_auto_connect_get(e, &auto_connect))
1675 printf(":::Service %s Auto Connect = %hhu\n", path, auto_connect);
1677 fputs("ERROR: can't get service auto connect\n", stderr);
1682 _on_cmd_service_set_auto_connect(char *cmd, char *args)
1684 char *path, *next_args;
1686 E_Connman_Element *e;
1690 fputs("ERROR: missing the service path\n", stderr);
1694 next_args = _tok(args);
1698 fputs("ERROR: missing the auto connect value\n", stderr);
1702 auto_connect = !!atol(next_args);
1704 e = e_connman_service_get(path);
1705 if (e_connman_service_auto_connect_set
1706 (e, auto_connect, _method_success_check, "service_set_auto_connect"))
1707 printf(":::Service %s auto connect set to %d\n", path, auto_connect);
1709 fputs("ERROR: can't set service auto connect\n", stderr);
1714 _on_cmd_service_get_setup_required(char *cmd, char *args)
1717 bool setup_required;
1718 E_Connman_Element *e;
1722 fputs("ERROR: missing the service path\n", stderr);
1728 e = e_connman_service_get(path);
1729 if (e_connman_service_setup_required_get(e, &setup_required))
1730 printf(":::Service %s Setup Required = %hhu\n", path, setup_required);
1732 fputs("ERROR: can't get service setup required\n", stderr);
1737 _on_cmd_service_get_apn(char *cmd, char *args)
1739 const char *apn, *path;
1740 E_Connman_Element *e;
1744 fputs("ERROR: missing the service path\n", stderr);
1750 e = e_connman_service_get(path);
1751 if (e_connman_service_apn_get(e, &apn))
1752 printf(":::Service %s APN = \"%s\"\n", path, apn);
1754 fputs("ERROR: can't get service APN\n", stderr);
1759 _on_cmd_service_set_apn(char *cmd, char *args)
1762 E_Connman_Element *e;
1766 fputs("ERROR: missing the service path\n", stderr);
1774 fputs("ERROR: missing the apn value\n", stderr);
1779 e = e_connman_service_get(path);
1780 if (e_connman_service_apn_set
1781 (e, apn, _method_success_check, "service_set_apn"))
1782 printf(":::Service %s APN set to \"%s\"\n", path, apn);
1784 fputs("ERROR: can't set service APN\n", stderr);
1789 _on_cmd_service_get_mcc(char *cmd, char *args)
1791 const char *mcc, *path;
1792 E_Connman_Element *e;
1796 fputs("ERROR: missing the service path\n", stderr);
1802 e = e_connman_service_get(path);
1803 if (e_connman_service_mcc_get(e, &mcc))
1804 printf(":::Service %s MCC = \"%s\"\n", path, mcc);
1806 fputs("ERROR: can't get service MCC\n", stderr);
1811 _on_cmd_service_get_mnc(char *cmd, char *args)
1813 const char *mnc, *path;
1814 E_Connman_Element *e;
1818 fputs("ERROR: missing the service path\n", stderr);
1824 e = e_connman_service_get(path);
1825 if (e_connman_service_mnc_get(e, &mnc))
1826 printf(":::Service %s MNC = \"%s\"\n", path, mnc);
1828 fputs("ERROR: can't get service MNC\n", stderr);
1833 _on_cmd_service_get_roaming(char *cmd, char *args)
1837 E_Connman_Element *e;
1841 fputs("ERROR: missing the service path\n", stderr);
1847 e = e_connman_service_get(path);
1848 if (e_connman_service_roaming_get(e, &roaming))
1849 printf(":::Service %s Roaming = %hhu\n", path, roaming);
1851 fputs("ERROR: can't get service roaming\n", stderr);
1856 _on_cmd_service_get_ipv4_method(char *cmd, char *args)
1858 const char *ipv4_method, *path;
1859 E_Connman_Element *e;
1863 fputs("ERROR: missing the service path\n", stderr);
1869 e = e_connman_service_get(path);
1870 if (e_connman_service_ipv4_method_get(e, &ipv4_method))
1871 printf(":::Service %s IPv4 Method = \"%s\"\n", path, ipv4_method);
1873 fputs("ERROR: can't get service ipv4 method\n", stderr);
1878 _on_cmd_service_get_ipv4_address(char *cmd, char *args)
1880 const char *ipv4_address, *path;
1881 E_Connman_Element *e;
1885 fputs("ERROR: missing the service path\n", stderr);
1891 e = e_connman_service_get(path);
1892 if (e_connman_service_ipv4_address_get(e, &ipv4_address))
1893 printf(":::Service %s IPv4 Address = \"%s\"\n", path, ipv4_address);
1895 fputs("ERROR: can't get service ipv4 address\n", stderr);
1900 _on_cmd_service_get_ipv4_gateway(char *cmd, char *args)
1902 const char *ipv4_gateway, *path;
1903 E_Connman_Element *e;
1907 fputs("ERROR: missing the service path\n", stderr);
1913 e = e_connman_service_get(path);
1914 if (e_connman_service_ipv4_gateway_get(e, &ipv4_gateway))
1915 printf(":::Service %s IPv4 Gateway = \"%s\"\n", path, ipv4_gateway);
1917 fputs("ERROR: can't get service ipv4 gateway\n", stderr);
1922 _on_cmd_service_get_ipv4_netmask(char *cmd, char *args)
1924 const char *ipv4_netmask, *path;
1925 E_Connman_Element *e;
1929 fputs("ERROR: missing the service path\n", stderr);
1935 e = e_connman_service_get(path);
1936 if (e_connman_service_ipv4_netmask_get(e, &ipv4_netmask))
1937 printf(":::Service %s IPv4 Netmask = \"%s\"\n", path, ipv4_netmask);
1939 fputs("ERROR: can't get service ipv4 netmask\n", stderr);
1944 _on_cmd_service_get_ipv4_configuration_method(char *cmd, char *args)
1946 const char *ipv4_method, *path;
1947 E_Connman_Element *e;
1951 fputs("ERROR: missing the service path\n", stderr);
1957 e = e_connman_service_get(path);
1958 if (e_connman_service_ipv4_configuration_method_get(e, &ipv4_method))
1959 printf(":::Service %s IPv4 Configuration Method = \"%s\"\n",
1962 fputs("ERROR: can't get service ipv4_configuration method\n", stderr);
1967 _on_cmd_service_get_ipv4_configuration_address(char *cmd, char *args)
1969 const char *ipv4_address, *path;
1970 E_Connman_Element *e;
1974 fputs("ERROR: missing the service path\n", stderr);
1980 e = e_connman_service_get(path);
1981 if (e_connman_service_ipv4_configuration_address_get(e, &ipv4_address))
1982 printf(":::Service %s IPv4 Configuration Address = \"%s\"\n",
1983 path, ipv4_address);
1985 fputs("ERROR: can't get service ipv4_configuration address\n", stderr);
1990 _on_cmd_service_get_ipv4_configuration_gateway(char *cmd, char *args)
1992 const char *ipv4_gateway, *path;
1993 E_Connman_Element *e;
1997 fputs("ERROR: missing the service path\n", stderr);
2003 e = e_connman_service_get(path);
2004 if (e_connman_service_ipv4_configuration_gateway_get(e, &ipv4_gateway))
2005 printf(":::Service %s IPv4 Configuration Gateway = \"%s\"\n",
2006 path, ipv4_gateway);
2008 fputs("ERROR: can't get service ipv4_configuration gateway\n", stderr);
2013 _on_cmd_service_get_ipv4_configuration_netmask(char *cmd, char *args)
2015 const char *ipv4_netmask, *path;
2016 E_Connman_Element *e;
2020 fputs("ERROR: missing the service path\n", stderr);
2026 e = e_connman_service_get(path);
2027 if (e_connman_service_ipv4_configuration_netmask_get(e, &ipv4_netmask))
2028 printf(":::Service %s IPv4 Configuration Netmask = \"%s\"\n",
2029 path, ipv4_netmask);
2031 fputs("ERROR: can't get service ipv4 configuration netmask\n", stderr);
2036 _on_cmd_service_ipv4_configure_dhcp(char *cmd, char *args)
2039 E_Connman_Element *e;
2043 fputs("ERROR: missing the service path\n", stderr);
2049 e = e_connman_service_get(path);
2050 if (e_connman_service_ipv4_configure_dhcp
2051 (e, _method_success_check, "service_ipv4_configure_dhcp"))
2052 printf(":::Service %s IPv4 Configuration set to DHCP\n", path);
2054 fputs("ERROR: can't set service ipv4_configuration dhcp\n", stderr);
2059 _on_cmd_service_ipv4_configure_manual(char *cmd, char *args)
2061 char *path, *next_args, *address, *netmask = NULL;
2062 E_Connman_Element *e;
2066 fputs("ERROR: missing the service path\n", stderr);
2070 next_args = _tok(args);
2073 fputs("ERROR: missing the service address\n", stderr);
2077 address = next_args;
2078 next_args = _tok(next_args);
2081 netmask = next_args;
2085 e = e_connman_service_get(path);
2086 if (e_connman_service_ipv4_configure_manual
2087 (e, address, netmask,
2088 _method_success_check, "service_ipv4_configure_manual"))
2089 printf(":::Service %s IPv4 Configuration set to Manual (%s/%s)\n",
2090 path, address, netmask);
2092 fputs("ERROR: can't set service ipv4_configuration manual\n", stderr);
2097 _on_cmd_service_get_ethernet_method(char *cmd, char *args)
2099 const char *ethernet_method, *path;
2100 E_Connman_Element *e;
2104 fputs("ERROR: missing the service path\n", stderr);
2110 e = e_connman_service_get(path);
2111 if (e_connman_service_ethernet_method_get(e, ðernet_method))
2112 printf(":::Service %s Ethernet Method = \"%s\"\n", path, ethernet_method);
2114 fputs("ERROR: can't get service ethernet method\n", stderr);
2119 _on_cmd_service_get_ethernet_address(char *cmd, char *args)
2121 const char *ethernet_address, *path;
2122 E_Connman_Element *e;
2126 fputs("ERROR: missing the service path\n", stderr);
2132 e = e_connman_service_get(path);
2133 if (e_connman_service_ethernet_address_get(e, ðernet_address))
2134 printf(":::Service %s Ethernet Address = \"%s\"\n",
2135 path, ethernet_address);
2137 fputs("ERROR: can't get service ethernet address\n", stderr);
2142 _on_cmd_service_get_ethernet_mtu(char *cmd, char *args)
2145 E_Connman_Element *e;
2146 unsigned short ethernet_mtu;
2150 fputs("ERROR: missing the service path\n", stderr);
2156 e = e_connman_service_get(path);
2157 if (e_connman_service_ethernet_mtu_get(e, ðernet_mtu))
2158 printf(":::Service %s Ethernet MTU = %hu\n", path, ethernet_mtu);
2160 fputs("ERROR: can't get service ethernet mtu\n", stderr);
2165 _on_cmd_service_get_ethernet_netmask(char *cmd, char *args)
2167 const char *ethernet_netmask, *path;
2168 E_Connman_Element *e;
2172 fputs("ERROR: missing the service path\n", stderr);
2178 e = e_connman_service_get(path);
2179 if (e_connman_service_ethernet_netmask_get(e, ðernet_netmask))
2180 printf(":::Service %s Ethernet Netmask = \"%s\"\n",
2181 path, ethernet_netmask);
2183 fputs("ERROR: can't get service ethernet netmask\n", stderr);
2189 _on_input(void *data, Ecore_Fd_Handler *fd_handler)
2195 int (*cb)(char *cmd, char *args);
2197 {"quit", _on_cmd_quit},
2198 {"sync", _on_cmd_sync},
2199 {"get_all", _on_cmd_get_all},
2200 {"print", _on_cmd_print},
2201 {"get_properties", _on_cmd_get_properties},
2202 {"set_property", _on_cmd_property_set},
2203 {"manager_get", _on_cmd_manager_get},
2204 {"manager_get_profiles", _on_cmd_manager_get_profiles},
2205 {"manager_get_devices", _on_cmd_manager_get_devices},
2206 {"manager_get_services", _on_cmd_manager_get_services},
2207 {"manager_register_agent", _on_cmd_manager_register_agent},
2208 {"manager_unregister_agent", _on_cmd_manager_unregister_agent},
2209 {"manager_get_state", _on_cmd_manager_get_state},
2210 {"manager_get_offline_mode", _on_cmd_manager_get_offline_mode},
2211 {"manager_set_offline_mode", _on_cmd_manager_set_offline_mode},
2212 {"manager_request_scan", _on_cmd_manager_request_scan},
2213 {"manager_technology_enable", _on_cmd_manager_technology_enable},
2214 {"manager_technology_disable", _on_cmd_manager_technology_disable},
2215 {"manager_get_technologies_available", _on_cmd_manager_get_technologies_available},
2216 {"manager_get_technologies_enabled", _on_cmd_manager_get_technologies_enabled},
2217 {"manager_get_technologies_connected", _on_cmd_manager_get_technologies_connected},
2218 {"manager_profile_remove", _on_cmd_manager_profile_remove},
2219 {"manager_profile_get_active", _on_cmd_manager_profile_get_active},
2220 {"manager_profile_set_active", _on_cmd_manager_profile_set_active},
2221 {"device_propose_scan", _on_cmd_device_propose_scan},
2222 {"device_get_address", _on_cmd_device_get_address},
2223 {"device_get_name", _on_cmd_device_get_name},
2224 {"device_get_type", _on_cmd_device_get_type},
2225 {"device_get_interface", _on_cmd_device_get_interface},
2226 {"device_get_powered", _on_cmd_device_get_powered},
2227 {"device_set_powered", _on_cmd_device_set_powered},
2228 {"device_get_scan_interval", _on_cmd_device_get_scan_interval},
2229 {"device_set_scan_interval", _on_cmd_device_set_scan_interval},
2230 {"device_get_scanning", _on_cmd_device_get_scanning},
2231 {"device_get_networks", _on_cmd_device_get_networks},
2232 {"profile_get_name", _on_cmd_profile_get_name},
2233 {"profile_set_name", _on_cmd_profile_set_name},
2234 {"profile_get_offline_mode", _on_cmd_profile_get_offline_mode},
2235 {"profile_set_offline_mode", _on_cmd_profile_set_offline_mode},
2236 {"profile_get_services", _on_cmd_profile_get_services},
2237 {"network_get_address", _on_cmd_network_get_address},
2238 {"network_get_name", _on_cmd_network_get_name},
2239 {"network_get_connected", _on_cmd_network_get_connected},
2240 {"network_get_strength", _on_cmd_network_get_strength},
2241 {"network_get_frequency", _on_cmd_network_get_frequency},
2242 {"network_get_device", _on_cmd_network_get_device},
2243 {"network_get_wifi_ssid", _on_cmd_network_get_wifi_ssid},
2244 {"network_get_wifi_mode", _on_cmd_network_get_wifi_mode},
2245 {"network_get_wifi_security", _on_cmd_network_get_wifi_security},
2246 {"network_get_wifi_passphrase", _on_cmd_network_get_wifi_passphrase},
2247 {"network_get_wifi_channel", _on_cmd_network_get_wifi_channel},
2248 {"network_get_wifi_eap", _on_cmd_network_get_wifi_eap},
2249 {"service_connect", _on_cmd_service_connect},
2250 {"service_disconnect", _on_cmd_service_disconnect},
2251 {"service_remove", _on_cmd_service_remove},
2252 {"service_move_before", _on_cmd_service_move_before},
2253 {"service_move_after", _on_cmd_service_move_after},
2254 {"service_get_state", _on_cmd_service_get_state},
2255 {"service_get_error", _on_cmd_service_get_error},
2256 {"service_get_name", _on_cmd_service_get_name},
2257 {"service_get_type", _on_cmd_service_get_type},
2258 {"service_get_mode", _on_cmd_service_get_mode},
2259 {"service_get_security", _on_cmd_service_get_security},
2260 {"service_get_passphrase", _on_cmd_service_get_passphrase},
2261 {"service_set_passphrase", _on_cmd_service_set_passphrase},
2262 {"service_get_passphrase_required", _on_cmd_service_get_passphrase_required},
2263 {"service_get_strength", _on_cmd_service_get_strength},
2264 {"service_get_favorite", _on_cmd_service_get_favorite},
2265 {"service_get_immutable", _on_cmd_service_get_immutable},
2266 {"service_get_auto_connect", _on_cmd_service_get_auto_connect},
2267 {"service_set_auto_connect", _on_cmd_service_set_auto_connect},
2268 {"service_get_setup_required", _on_cmd_service_get_setup_required},
2269 {"service_get_apn", _on_cmd_service_get_apn},
2270 {"service_set_apn", _on_cmd_service_set_apn},
2271 {"service_get_mcc", _on_cmd_service_get_mcc},
2272 {"service_get_mnc", _on_cmd_service_get_mnc},
2273 {"service_get_roaming", _on_cmd_service_get_roaming},
2274 {"service_get_ipv4_method", _on_cmd_service_get_ipv4_method},
2275 {"service_get_ipv4_address", _on_cmd_service_get_ipv4_address},
2276 {"service_get_ipv4_gateway", _on_cmd_service_get_ipv4_gateway},
2277 {"service_get_ipv4_netmask", _on_cmd_service_get_ipv4_netmask},
2278 {"service_get_ipv4_configuration_method", _on_cmd_service_get_ipv4_configuration_method},
2279 {"service_get_ipv4_configuration_address", _on_cmd_service_get_ipv4_configuration_address},
2280 {"service_get_ipv4_configuration_gateway", _on_cmd_service_get_ipv4_configuration_gateway},
2281 {"service_get_ipv4_configuration_netmask", _on_cmd_service_get_ipv4_configuration_netmask},
2282 {"service_ipv4_configure_dhcp", _on_cmd_service_ipv4_configure_dhcp},
2283 {"service_ipv4_configure_manual", _on_cmd_service_ipv4_configure_manual},
2284 {"service_get_ethernet_method", _on_cmd_service_get_ethernet_method},
2285 {"service_get_ethernet_address", _on_cmd_service_get_ethernet_address},
2286 {"service_get_ethernet_mtu", _on_cmd_service_get_ethernet_mtu},
2287 {"service_get_ethernet_netmask", _on_cmd_service_get_ethernet_netmask},
2292 if (ecore_main_fd_handler_active_get(fd_handler, ECORE_FD_ERROR))
2294 fputs("ERROR: reading from stdin, exit\n", stderr);
2298 if (!ecore_main_fd_handler_active_get(fd_handler, ECORE_FD_READ))
2300 fputs("ERROR: nothing to read?\n", stderr);
2304 if (!fgets(buf, sizeof(buf), stdin))
2306 fprintf(stderr, "ERROR: could not read command: %s\n", strerror(errno));
2307 ecore_main_loop_quit();
2312 while (isspace(*cmd))
2315 args = strchr(cmd, ' ');
2323 while (isspace(*args))
2326 p = args + strlen(args) - 1;
2334 p = cmd + strlen(cmd) - 1;
2339 if (strcmp(cmd, "help") == 0)
2343 printf("Commands with '%s' in the name:\n", args);
2344 for (itr = maps; itr->cmd != NULL; itr++)
2345 if (strstr(itr->cmd, args))
2346 printf("\t%s\n", itr->cmd);
2350 fputs("Commands:\n", stdout);
2351 for (itr = maps; itr->cmd != NULL; itr++)
2352 printf("\t%s\n", itr->cmd);
2354 fputc('\n', stdout);
2358 for (itr = maps; itr->cmd != NULL; itr++)
2359 if (strcmp(itr->cmd, cmd) == 0)
2360 return itr->cb(cmd, args);
2362 printf("unknown command \"%s\", args=%s\n", cmd, args);
2367 main(int argc, char *argv[])
2369 E_DBus_Connection *c;
2375 c = e_dbus_bus_get(DBUS_BUS_SYSTEM);
2377 printf("ERROR: can't connect to system session\n");
2381 e_connman_system_init(c);
2382 ecore_event_handler_add(E_CONNMAN_EVENT_ELEMENT_ADD, _on_element_add, NULL);
2383 ecore_event_handler_add(E_CONNMAN_EVENT_ELEMENT_DEL, _on_element_del, NULL);
2384 ecore_event_handler_add(E_CONNMAN_EVENT_ELEMENT_UPDATED,
2385 _on_element_updated, NULL);
2387 ecore_main_fd_handler_add
2388 (0, ECORE_FD_READ | ECORE_FD_ERROR, _on_input, NULL, NULL, NULL);
2390 ecore_main_loop_begin();
2392 e_connman_system_shutdown();
2394 e_dbus_connection_close(c);
2399 fputs("DBG: clean exit.\n", stderr);