Track SCTP_STREAM_CHANGE_EVENT and display it

This notifies us if the number of streams changes while running.

Change-Id: Idccfe3e834c48582a6d7fc523262ff9ac4294f61
diff --git a/aos/network/sctp_client.cc b/aos/network/sctp_client.cc
index 91976cc..d77392e 100644
--- a/aos/network/sctp_client.cc
+++ b/aos/network/sctp_client.cc
@@ -59,6 +59,7 @@
     memset(&subscribe, 0, sizeof(subscribe));
     subscribe.sctp_data_io_event = 1;
     subscribe.sctp_association_event = 1;
+    subscribe.sctp_stream_change_event = 1;
     PCHECK(setsockopt(fd_, SOL_SCTP, SCTP_EVENTS, (char *)&subscribe,
                       sizeof(subscribe)) == 0);
   }
diff --git a/aos/network/sctp_lib.cc b/aos/network/sctp_lib.cc
index 1e985f3..b82c1eb 100644
--- a/aos/network/sctp_lib.cc
+++ b/aos/network/sctp_lib.cc
@@ -133,6 +133,15 @@
       LOG(INFO) << " SCTP_REMOTE_ERROR";
       VLOG(1) << "\t\t(remote_error: err=" << ntohs(sre->sre_error) << ")";
     } break;
+    case SCTP_STREAM_CHANGE_EVENT: {
+      const struct sctp_stream_change_event *sce =
+          &snp->sn_strchange_event;
+      LOG(INFO) << " SCTP_STREAM_CHANGE_EVENT";
+      VLOG(1) << "\t\t(stream_change_event: flags=" << sce->strchange_flags
+              << ", assoc_id=" << sce->strchange_assoc_id
+              << ", instrms=" << sce->strchange_instrms
+              << ", outstrms=" << sce->strchange_outstrms << " )";
+    } break;
     case SCTP_SHUTDOWN_EVENT: {
       LOG(INFO) << " SCTP_SHUTDOWN_EVENT";
     } break;