chiark / gitweb /
Mark `help' and `version' functions as not returning.
[disorder] / server / speaker.c
index e4707596b2921996c6390ee53dda2a98132af66c..0cc3ac4ff589ed71319911dd455aeb46c8d9d536 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);
         }