diff --git a/bacnet-stack/demo/handler/h_dcc.c b/bacnet-stack/demo/handler/h_dcc.c index 552748a4..ce1c2e96 100644 --- a/bacnet-stack/demo/handler/h_dcc.c +++ b/bacnet-stack/demo/handler/h_dcc.c @@ -67,6 +67,13 @@ void handler_dcc_password_set( } } +/** Gets (non-volatile hold) the password to be used for DCC requests. + * @return DCC password + */ +char *handler_dcc_password(void) +{ + return My_Password; +} /** Handler for a Device Communication Control (DCC) request. * @ingroup DMDCC diff --git a/bacnet-stack/include/handlers.h b/bacnet-stack/include/handlers.h index 095f6638..d873153e 100644 --- a/bacnet-stack/include/handlers.h +++ b/bacnet-stack/include/handlers.h @@ -32,6 +32,7 @@ #include "apdu.h" #include "bacapp.h" #include "ptransfer.h" +#include "npdu.h" #include "rd.h" #include "rp.h" #include "rpm.h" @@ -57,6 +58,25 @@ extern "C" { uint8_t * pdu, /* PDU data */ uint16_t pdu_len); /* length PDU */ + void npdu_handler_cleanup(void); + void npdu_handler_init( + uint16_t bip_net, + uint16_t mstp_net); + void npdu_router_handler( + uint16_t snet, + BACNET_ADDRESS * src, + uint8_t * pdu, + uint16_t pdu_len); + int npdu_router_send_pdu( + uint16_t dnet, + BACNET_ADDRESS * dest, + BACNET_NPDU_DATA * npdu_data, + uint8_t * pdu, + unsigned int pdu_len); + void npdu_router_get_my_address( + uint16_t dnet, + BACNET_ADDRESS * my_address); + void routing_npdu_handler( BACNET_ADDRESS * src, int *DNET_list, @@ -171,6 +191,7 @@ extern "C" { BACNET_CONFIRMED_SERVICE_DATA * service_data); void handler_dcc_password_set( char *new_password); + char *handler_dcc_password(void); void handler_i_have( uint8_t * service_request, @@ -191,10 +212,15 @@ extern "C" { uint8_t * apdu, int max_apdu); void handler_timesync_task(BACNET_DATE_TIME *bdatetime); - void handler_timesync_init( - void); + void handler_timesync_init(void); bool handler_timesync_recipient_write( BACNET_WRITE_PROPERTY_DATA * wp_data); + uint32_t handler_timesync_interval(void); + bool handler_timesync_interval_set(uint32_t minutes); + uint32_t handler_timesync_interval_offset(void); + bool handler_timesync_interval_offset_set(uint32_t minutes); + bool handler_timesync_interval_align(void); + bool handler_timesync_interval_align_set(bool flag); bool handler_timesync_recipient_address_set( unsigned index, BACNET_ADDRESS * address);