Remove #ifdef MOQT_AUTH_INFO. Also eliminate an old reference to subscribe_request

Interop is done, and the num_parameters field is restored.

Not in production

PiperOrigin-RevId: 607031454
diff --git a/quiche/quic/moqt/moqt_messages.h b/quiche/quic/moqt/moqt_messages.h
index a7c9e5d..9922c04 100644
--- a/quiche/quic/moqt/moqt_messages.h
+++ b/quiche/quic/moqt/moqt_messages.h
@@ -20,12 +20,6 @@
 #include "quiche/quic/core/quic_versions.h"
 #include "quiche/common/platform/api/quiche_export.h"
 
-// the draft-02 spec makes AUTH_INFO unparseable in SUBSCRIBE messages. This
-// flag assumes that the num_parameters field exists so that it is parseable.
-// If false, there is no num_parameters field and there must not be an
-// AUTH_INFO field.
-#define MOQT_AUTH_INFO
-
 namespace moqt {
 
 inline constexpr quic::ParsedQuicVersionVector GetMoqtSupportedQuicVersions() {
@@ -218,9 +212,7 @@
   std::optional<MoqtSubscribeLocation> start_object;
   std::optional<MoqtSubscribeLocation> end_group;
   std::optional<MoqtSubscribeLocation> end_object;
-#ifdef MOQT_AUTH_INFO
   std::optional<absl::string_view> authorization_info;
-#endif
 };
 
 struct QUICHE_EXPORT MoqtSubscribeOk {
diff --git a/quiche/quic/moqt/moqt_parser.cc b/quiche/quic/moqt/moqt_parser.cc
index ac72183..96c8a92 100644
--- a/quiche/quic/moqt/moqt_parser.cc
+++ b/quiche/quic/moqt/moqt_parser.cc
@@ -382,7 +382,6 @@
         "or both non_None");
     return 0;
   }
-#ifdef MOQT_AUTH_INFO
   uint64_t num_params;
   if (!reader.ReadVarInt62(&num_params)) {
     return 0;
@@ -409,7 +408,6 @@
         break;
     }
   }
-#endif
   visitor_.OnSubscribeMessage(subscribe_request);
   return reader.PreviouslyReadPayload().length();
 }
diff --git a/quiche/quic/moqt/moqt_parser_test.cc b/quiche/quic/moqt/moqt_parser_test.cc
index 278c39f..8116455 100644
--- a/quiche/quic/moqt/moqt_parser_test.cc
+++ b/quiche/quic/moqt/moqt_parser_test.cc
@@ -128,12 +128,10 @@
     subscribe_request.track_namespace = absl::string_view(string0_);
     string1_ = std::string(subscribe_request.track_name);
     subscribe_request.track_name = absl::string_view(string1_);
-#ifdef MOQT_AUTH_INFO
     if (subscribe_request.authorization_info.has_value()) {
       string2_ = std::string(*subscribe_request.authorization_info);
       subscribe_request.authorization_info = absl::string_view(string2_);
     }
-#endif
     last_message_ = TestMessageBase::MessageStructuredData(subscribe_request);
   }
   void OnSubscribeOkMessage(const MoqtSubscribeOk& message) override {
@@ -654,7 +652,6 @@
   EXPECT_EQ(visitor_.parsing_error_code_, MoqtError::kProtocolViolation);
 }
 
-#ifdef MOQT_AUTH_INFO
 TEST_F(MoqtMessageSpecificTest, SubscribeAuthorizationInfoTwice) {
   MoqtParser parser(kWebTrans, visitor_);
   char subscribe[] = {
@@ -675,7 +672,6 @@
             "AUTHORIZATION_INFO parameter appears twice in SUBSCRIBE_REQUEST");
   EXPECT_EQ(visitor_.parsing_error_code_, MoqtError::kProtocolViolation);
 }
-#endif
 
 TEST_F(MoqtMessageSpecificTest, AnnounceAuthorizationInfoTwice) {
   MoqtParser parser(kWebTrans, visitor_);
@@ -768,10 +764,8 @@
       0x01, 0x01,                    // start_object = 1 (absolute)
       0x00,                          // end_group = none
       0x00,                          // end_object = none
-#ifdef MOQT_AUTH_INFO
       0x01,                          // 1 parameter
       0x02, 0x03, 0x62, 0x61, 0x72,  // authorization_info = "bar"
-#endif
   };
   parser.ProcessData(absl::string_view(subscribe, sizeof(subscribe)), false);
   EXPECT_EQ(visitor_.messages_received_, 0);
@@ -790,10 +784,8 @@
       0x00,                          // start_object = none
       0x00,                          // end_group = none
       0x00,                          // end_object = none
-#ifdef MOQT_AUTH_INFO
       0x01,                          // 1 parameter
       0x02, 0x03, 0x62, 0x61, 0x72,  // authorization_info = "bar"
-#endif
   };
   parser.ProcessData(absl::string_view(subscribe, sizeof(subscribe)), false);
   EXPECT_EQ(visitor_.messages_received_, 0);
@@ -812,10 +804,8 @@
       0x01, 0x01,                    // start_object = 1 (absolute)
       0x00,                          // end_group = none
       0x01, 0x01,                    // end_object = 1 (absolute)
-#ifdef MOQT_AUTH_INFO
       0x01,                          // 1 parameter
       0x02, 0x03, 0x62, 0x61, 0x72,  // authorization_info = "bar"
-#endif
   };
   parser.ProcessData(absl::string_view(subscribe, sizeof(subscribe)), false);
   EXPECT_EQ(visitor_.messages_received_, 0);
@@ -871,10 +861,8 @@
       0x03, 0x00,                    // start_object = 1 (relative next)
       0x00,                          // end_group = none
       0x00,                          // end_object = none
-#ifdef MOQT_AUTH_INFO
       0x01,                          // 1 parameter
       0x02, 0x03, 0x62, 0x61, 0x72,  // authorization_info = "bar"
-#endif
   };
   parser.ProcessData(absl::string_view(subscribe, sizeof(subscribe)), false);
   EXPECT_EQ(visitor_.messages_received_, 1);
diff --git a/quiche/quic/moqt/moqt_session_test.cc b/quiche/quic/moqt/moqt_session_test.cc
index a865118..158c7a5 100644
--- a/quiche/quic/moqt/moqt_session_test.cc
+++ b/quiche/quic/moqt/moqt_session_test.cc
@@ -273,9 +273,7 @@
       /*start_object=*/MoqtSubscribeLocation(true, static_cast<uint64_t>(0)),
       /*end_group=*/std::nullopt,
       /*end_object=*/std::nullopt,
-#ifdef MOQT_AUTH_INFO
       /*authorization_info=*/std::nullopt,
-#endif
   };
   StrictMock<webtransport::test::MockStream> mock_stream;
   std::unique_ptr<MoqtParserVisitor> stream_input =
@@ -393,9 +391,7 @@
       /*start_object=*/MoqtSubscribeLocation(true, static_cast<uint64_t>(0)),
       /*end_group=*/std::nullopt,
       /*end_object=*/std::nullopt,
-#ifdef MOQT_AUTH_INFO
       /*authorization_info=*/std::nullopt,
-#endif
   };
   StrictMock<webtransport::test::MockStream> mock_stream;
   std::unique_ptr<MoqtParserVisitor> stream_input =
@@ -431,9 +427,7 @@
       /*start_object=*/MoqtSubscribeLocation(true, static_cast<uint64_t>(0)),
       /*end_group=*/std::nullopt,
       /*end_object=*/std::nullopt,
-#ifdef MOQT_AUTH_INFO
       /*authorization_info=*/std::nullopt,
-#endif
   };
   StrictMock<webtransport::test::MockStream> mock_stream;
   std::unique_ptr<MoqtParserVisitor> stream_input =
@@ -767,9 +761,7 @@
       /*start_object=*/MoqtSubscribeLocation(true, static_cast<uint64_t>(0)),
       /*end_group=*/std::nullopt,
       /*end_object=*/std::nullopt,
-#ifdef MOQT_AUTH_INFO
       /*authorization_info=*/std::nullopt,
-#endif
   };
   StrictMock<webtransport::test::MockStream> mock_stream;
   std::unique_ptr<MoqtParserVisitor> stream_input =
diff --git a/quiche/quic/moqt/test_tools/moqt_test_message.h b/quiche/quic/moqt/test_tools/moqt_test_message.h
index dae15e0..cd3d094 100644
--- a/quiche/quic/moqt/test_tools/moqt_test_message.h
+++ b/quiche/quic/moqt/test_tools/moqt_test_message.h
@@ -407,65 +407,55 @@
 
   bool EqualFieldValues(MessageStructuredData& values) const override {
     auto cast = std::get<MoqtSubscribe>(values);
-    if (cast.subscribe_id != subscribe_request_.subscribe_id) {
+    if (cast.subscribe_id != subscribe_.subscribe_id) {
       QUIC_LOG(INFO) << "SUBSCRIBE subscribe ID mismatch";
       return false;
     }
-    if (cast.track_alias != subscribe_request_.track_alias) {
+    if (cast.track_alias != subscribe_.track_alias) {
       QUIC_LOG(INFO) << "SUBSCRIBE track alias mismatch";
       return false;
     }
-    if (cast.track_namespace != subscribe_request_.track_namespace) {
+    if (cast.track_namespace != subscribe_.track_namespace) {
       QUIC_LOG(INFO) << "SUBSCRIBE track namespace mismatch";
       return false;
     }
-    if (cast.track_name != subscribe_request_.track_name) {
+    if (cast.track_name != subscribe_.track_name) {
       QUIC_LOG(INFO) << "SUBSCRIBE track name mismatch";
       return false;
     }
-    if (cast.start_group != subscribe_request_.start_group) {
+    if (cast.start_group != subscribe_.start_group) {
       QUIC_LOG(INFO) << "SUBSCRIBE start group mismatch";
       return false;
     }
-    if (cast.start_object != subscribe_request_.start_object) {
+    if (cast.start_object != subscribe_.start_object) {
       QUIC_LOG(INFO) << "SUBSCRIBE start object mismatch";
       return false;
     }
-    if (cast.end_group != subscribe_request_.end_group) {
+    if (cast.end_group != subscribe_.end_group) {
       QUIC_LOG(INFO) << "SUBSCRIBE end group mismatch";
       return false;
     }
-    if (cast.end_object != subscribe_request_.end_object) {
+    if (cast.end_object != subscribe_.end_object) {
       QUIC_LOG(INFO) << "SUBSCRIBE end object mismatch";
       return false;
     }
-#ifdef MOQT_AUTH_INFO
-    if (cast.authorization_info != subscribe_request_.authorization_info) {
+    if (cast.authorization_info != subscribe_.authorization_info) {
       QUIC_LOG(INFO) << "SUBSCRIBE authorization info mismatch";
       return false;
     }
-#endif
     return true;
   }
 
   void ExpandVarints() override {
-#ifdef MOQT_AUTH_INFO
     ExpandVarintsImpl("vvvv---v----vvvvvvvvv");
-#else
-    ExpandVarintsImpl("vvvv---v----vvvvvv");
-#endif
   }
 
   MessageStructuredData structured_data() const override {
-    return TestMessageBase::MessageStructuredData(subscribe_request_);
+    return TestMessageBase::MessageStructuredData(subscribe_);
   }
 
  private:
-#ifdef MOQT_AUTH_INFO
   uint8_t raw_packet_[24] = {
-#else
-  uint8_t raw_packet_[18] = {
-#endif
     0x03,
     0x01,
     0x02,  // id and alias
@@ -486,17 +476,15 @@
     0x00,  // end_object = none
            // TODO(martinduke): figure out what to do about the missing num
            // parameters field.
-#ifdef MOQT_AUTH_INFO
     0x01,  // 1 parameter
     0x02,
     0x03,
     0x62,
     0x61,
     0x72,  // authorization_info = "bar"
-#endif
   };
 
-  MoqtSubscribe subscribe_request_ = {
+  MoqtSubscribe subscribe_ = {
       /*subscribe_id=*/1,
       /*track_alias=*/2,
       /*track_namespace=*/"foo",
@@ -505,9 +493,7 @@
       /*start_object=*/MoqtSubscribeLocation(true, (uint64_t)1),
       /*end_group=*/std::nullopt,
       /*end_object=*/std::nullopt,
-#ifdef MOQT_AUTH_INFO
       /*authorization_info=*/"bar",
-#endif
   };
 };