diff --git a/c/include/proton/logger.h b/c/include/proton/logger.h
index 35f330b..68e5f29 100644
--- a/c/include/proton/logger.h
+++ b/c/include/proton/logger.h
@@ -167,7 +167,7 @@
  * @param[in] subsystem bits representing subsystems to turn on trace for
  * @param[in] level bits representing log levels to turn on trace for
  */
-PN_EXTERN void pn_logger_set_mask(pn_logger_t *logger, pn_log_subsystem_t subsystem, pn_log_level_t level);
+PN_EXTERN void pn_logger_set_mask(pn_logger_t *logger, uint16_t subsystem, uint16_t level);
 
 /**
  * Clear a logger's tracing flags.
@@ -189,7 +189,7 @@
  * @param[in] subsystem bits representing subsystems to turn off trace for
  * @param[in] level bits representing log levels to turn off trace for
  */
-PN_EXTERN void pn_logger_reset_mask(pn_logger_t *logger, pn_log_subsystem_t subsystem, pn_log_level_t severity);
+PN_EXTERN void pn_logger_reset_mask(pn_logger_t *logger, uint16_t subsystem, uint16_t severity);
 
 /**
  * Set the tracing function used by a logger.
diff --git a/c/src/core/logger.c b/c/src/core/logger.c
index 45743ef..6893b40 100644
--- a/c/src/core/logger.c
+++ b/c/src/core/logger.c
@@ -150,13 +150,13 @@
   return &the_default_logger;
 }
 
-void pn_logger_set_mask(pn_logger_t *logger, pn_log_subsystem_t subsystem, pn_log_level_t severity)
+void pn_logger_set_mask(pn_logger_t *logger, uint16_t subsystem, uint16_t severity)
 {
   logger->sev_mask = (pn_log_level_t) (logger->sev_mask | severity);
   logger->sub_mask = (pn_log_subsystem_t) (logger->sub_mask | subsystem);
 }
 
-void pn_logger_reset_mask(pn_logger_t *logger, pn_log_subsystem_t subsystem, pn_log_level_t severity)
+void pn_logger_reset_mask(pn_logger_t *logger, uint16_t subsystem, uint16_t severity)
 {
   logger->sev_mask = (pn_log_level_t) (logger->sev_mask & ~severity);
   logger->sub_mask = (pn_log_subsystem_t) (logger->sub_mask & ~subsystem);
diff --git a/c/src/core/logger_private.h b/c/src/core/logger_private.h
index d48e97e..9c6231b 100644
--- a/c/src/core/logger_private.h
+++ b/c/src/core/logger_private.h
@@ -22,11 +22,11 @@
 #include <proton/logger.h>
 
 struct pn_logger_t {
-    pn_log_sink_t       sink;
-    intptr_t            sink_context;
-    pn_log_level_t   sev_mask;
-    pn_log_subsystem_t  sub_mask;
-    pn_string_t        *scratch;
+    pn_log_sink_t sink;
+    intptr_t      sink_context;
+    pn_string_t  *scratch;
+    uint16_t      sub_mask;
+    uint16_t      sev_mask;
 };
 
 void pni_init_default_logger(void);
