+ return ret;
+}
+
+__noreturn int afs_init(uint32_t cookie, int socket_fd)
+{
+ enum play_mode current_play_mode;
+ struct sched s;
+ int ret = open_afs_tables();
+
+ if (ret < 0) {
+ PARA_EMERG_LOG("%s\n", PARA_STRERROR(-ret));
+ exit(EXIT_FAILURE);
+ }
+ server_socket = socket_fd;
+ PARA_INFO_LOG("server_socket: %d, afs_socket_cookie: %u\n",
+ server_socket, (unsigned) cookie);
+ current_play_mode = init_admissible_files();
+ register_tasks(cookie);
+ s.default_timeout.tv_sec = 0;
+ s.default_timeout.tv_usec = 99 * 1000;
+ ret = sched(&s);
+ if (ret < 0)
+ PARA_EMERG_LOG("%s\n", PARA_STRERROR(-ret));
+ close_afs_tables(OSL_MARK_CLEAN);