static int app_network_service_main(int argc, char *argv[]) { int ret; struct cavan_dynamic_service *service; struct app_network_service *app_service; assert(argc > 1); service = cavan_dynamic_service_create(sizeof(struct app_network_service)); if (service == NULL) { pr_red_info("cavan_dynamic_service_create"); return -ENOMEM; } service->min = 20; service->max = 1000; service->verbose = true; service->name = "APP_NETWORK"; service->conn_size = sizeof(struct network_client); service->start = app_network_start_handler; service->stop = app_network_stop_handler; service->run = app_network_run_handler; service->open_connect = app_network_open_connect; service->close_connect = app_network_close_connect; app_service = cavan_dynamic_service_get_data(service); app_service->url = argv[1]; ret = cavan_dynamic_service_run(service); cavan_dynamic_service_destroy(service); return ret; }
int ftp_service_run(struct cavan_dynamic_service *service) { service->name = "FTP"; service->conn_size = sizeof(struct network_client); service->start = ftp_service_start_handler; service->stop = ftp_service_stop_handler; service->run = ftp_service_run_handler; service->open_connect = ftp_service_open_connect; service->close_connect = ftp_service_close_connect; return cavan_dynamic_service_run(service); }