X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-hsrv.h;h=06e3c240264fa0b57cfc596ddd187caa8d53e96b;hb=65353dce81a629e042800bb7b86fcd869a76727e;hp=da4fe09a88402ccd12e7c69113fe1ac1ef63ea55;hpb=fb230eee946673ed5ebe9659d623c2a06d0a80ce;p=src%2Fapp-framework-binder.git diff --git a/src/afb-hsrv.h b/src/afb-hsrv.h index da4fe09a..06e3c240 100644 --- a/src/afb-hsrv.h +++ b/src/afb-hsrv.h @@ -1,5 +1,5 @@ /* - Copyright 2016 IoT.bzh + Copyright (C) 2015-2020 "IoT.bzh" author: José Bollo @@ -16,5 +16,22 @@ limitations under the License. */ -int afb_hsrv_start(AFB_session * session); -void afb_hsrv_stop(AFB_session * session); +#pragma once + +struct afb_hsrv; +struct afb_hreq; +struct locale_root; + +extern struct afb_hsrv *afb_hsrv_create(); +extern void afb_hsrv_put(struct afb_hsrv *hsrv); + +extern void afb_hsrv_stop(struct afb_hsrv *hsrv); +extern int afb_hsrv_start(struct afb_hsrv *hsrv, unsigned int connection_timeout); +extern int afb_hsrv_set_cache_timeout(struct afb_hsrv *hsrv, int duration); +extern int afb_hsrv_add_alias(struct afb_hsrv *hsrv, const char *prefix, int dirfd, const char *alias, int priority, int relax); +extern int afb_hsrv_add_alias_root(struct afb_hsrv *hsrv, const char *prefix, struct locale_root *root, int priority, int relax); +extern int afb_hsrv_add_handler(struct afb_hsrv *hsrv, const char *prefix, int (*handler) (struct afb_hreq *, void *), void *data, int priority); +extern int afb_hsrv_add_interface(struct afb_hsrv *hsrv, const char *uri); +extern int afb_hsrv_add_interface_tcp(struct afb_hsrv *hsrv, const char *itf, uint16_t port); + +extern void afb_hsrv_run(struct afb_hsrv *hsrv);