void print_direct_status(void) { int wait_for_secs = config_int_get(DIRECT_WAIT_FOR_CONNECTION); int wait_after_secs = config_int_get(DIRECT_WAIT_AFTER_TRANSFER); printf("Direct mode is: "); if (!wait_for_secs) { printf("disabled\n"); return; } printf("enabled\n"); printf("The Direct Mode network will:\n"); printf("\twait for %s for a device to connect\n", secsprint(wait_for_secs)); printf("\tstay on %s after the last item is received\n", secsprint(wait_after_secs)); }
int direct_mode_enabled(void) { int wait_for_secs = config_int_get(DIRECT_WAIT_FOR_CONNECTION); if (wait_for_secs > 0) return 1; return 0; }
static void *remote_connect_sync_thread( void *data ) { net_response_t *response; net_ctx_t *ctx = NULL; char *remote_service_name = NULL; int shutdown_fd = 0; fd_set read_fds; struct timeval tv; int sync_interval = 0; logging_printf( LOGGING_DEBUG, "remote_connect_sync_thread: start\n"); logging_printf( LOGGING_DEBUG, "rmeote_connect_sync_thread: sync.interval=%s\n", config_string_get("sync.interval")); shutdown_fd = net_socket_get_shutdown_fd(); logging_printf( LOGGING_DEBUG, "remote_connect_sync_thread: shutdown_fd=%u\n", shutdown_fd ); remote_service_name = config_string_get("remote.connect"); sync_interval = config_int_get("sync.interval"); do { ctx = net_ctx_find_by_name( remote_service_name ); if( ! ctx ) { logging_printf( LOGGING_DEBUG, "remote_connect_sync_thread: No remote connection context\n"); break; } FD_ZERO( &read_fds ); FD_SET( shutdown_fd, &read_fds ); memset( &tv, 0, sizeof( struct timeval ) ); tv.tv_sec = sync_interval; select( shutdown_fd + 1, &read_fds, NULL , NULL, &tv ); logging_printf( LOGGING_DEBUG, "remote_connect_sync_thread: select()=\"%s\"\n", strerror( errno ) ); if( net_socket_get_shutdown_lock() == 1 ) { logging_printf(LOGGING_DEBUG, "remote_connect_sync_thread: shutdown received during poll\n"); break; } response = net_response_sync( ctx->send_ssrc , ctx->start ); net_ctx_send( ctx, response->buffer, response->len, USE_CONTROL_PORT ); hex_dump( response->buffer, response->len ); net_response_destroy( &response ); } while( 1 ); if( net_socket_get_shutdown_lock() == 1 ) { logging_printf(LOGGING_DEBUG, "remote_connect_sync_thread: shutdown received\n"); } logging_printf( LOGGING_DEBUG, "remote_connect_sync_thread: stop\n"); return NULL; }
enum transfer_mode fetch_transfer_mode(void) { return config_int_get(TRANSFER_MODE); }
int wlan_enabled(void) { return config_int_get(WLAN_DISABLE); }