server/*.c: Don't try reading per-user configuration.
[disorder] / server / speaker.c
index e470759..719a6d8 100644 (file)
@@ -235,7 +235,7 @@ static const struct option options[] = {
 };
 
 /* Display usage message and terminate. */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
   xprintf("Usage:\n"
          "  disorder-speaker [OPTIONS]\n"
          "Options:\n"
@@ -660,6 +660,15 @@ static void mainloop(void) {
             disorder_error(0, "cannot read configuration");
           disorder_info("reloaded configuration");
          break;
+        case SM_RTP_REQUEST:
+          /* TODO the error behavior here is really unhelpful */
+          if(rtp_add_recipient(&sm.u.address))
+            disorder_error(0, "unacceptable RTP destination");
+          break;
+        case SM_RTP_CANCEL:
+          if(rtp_remove_recipient(&sm.u.address))
+            disorder_error(0, "unacceptable RTP destination for removal");
+          break;
        default:
          disorder_error(0, "unknown message type %d", sm.type);
         }
@@ -760,6 +769,7 @@ int main(int argc, char **argv) {
     log_default = &log_syslog;
   }
   config_uaudio_apis = uaudio_apis;
+  config_per_user = 0;
   if(config_read(1, NULL)) disorder_fatal(0, "cannot read configuration");
   /* ignore SIGPIPE */
   signal(SIGPIPE, SIG_IGN);