Add runtime sanity checks

Bug: 146086425
Test: Manually boots
Change-Id: I17e10a2c7fa9646b2a727da726ed3757d42439e3
diff --git a/system/gd/shim/stack.cc b/system/gd/shim/stack.cc
index 757fd90..2c07123 100644
--- a/system/gd/shim/stack.cc
+++ b/system/gd/shim/stack.cc
@@ -103,46 +103,57 @@
   }
 
   IAdvertising* GetAdvertising() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Advertising>();
   }
 
   IController* GetController() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Controller>();
   }
 
   IConnectability* GetConnectability() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Connectability>();
   }
 
   IDiscoverability* GetDiscoverability() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Discoverability>();
   }
 
   IHciLayer* GetHciLayer() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::HciLayer>();
   }
 
   IInquiry* GetInquiry() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Inquiry>();
   }
 
   IL2cap* GetL2cap() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::L2cap>();
   }
 
   IName* GetName() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Name>();
   }
 
   IPage* GetPage() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Page>();
   }
 
   IScanning* GetScanning() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Scanning>();
   }
 
   ISecurity* GetSecurity() {
+    ASSERT(is_running_);
     return stack_manager_.GetInstance<bluetooth::shim::Security>();
   }
 
diff --git a/system/main/shim/l2c_api.cc b/system/main/shim/l2c_api.cc
index 1446816..7224aab 100644
--- a/system/main/shim/l2c_api.cc
+++ b/system/main/shim/l2c_api.cc
@@ -30,6 +30,8 @@
                                         tL2CAP_APPL_INFO* callbacks,
                                         bool enable_snoop,
                                         tL2CAP_ERTM_INFO* p_ertm_info) {
+  CHECK(callbacks != nullptr);
+
   if (L2C_INVALID_PSM(client_psm)) {
     LOG_ERROR(LOG_TAG, "%s Invalid classic psm:%hd", __func__, client_psm);
     return 0;