diff options
author | Paul Vinciguerra <pvinci@vinciconsulting.com> | 2019-05-18 22:09:28 -0400 |
---|---|---|
committer | Ole Trøan <otroan@employees.org> | 2019-05-29 07:40:56 +0000 |
commit | 68b24e2c9ae80839d15f680959cce31ca3ec2123 (patch) | |
tree | 2ae49e41e5e64509c0dfdeb02b20819d15f97e7b /src/plugins/http_static/http_static.c | |
parent | 883a8672c14085b61450599188d04317c45f5d12 (diff) |
plugins: http_static. Migrate to use api string type.
This is not my core competency.
Reviews/feedback/suggestions welcomed. ;)
Tested with:
rv = self.vapi.http_static_enable(
fifo_size = 1,
cache_size_limit = 1000000,
prealloc_fifos = 0,
private_segment_size = 0,
uri="tcp://0.0.0.0/80",
www_root = "/var/tmp/run/vpp/html"
)
DBGvpp# show http static server
www_root /var/tmp/run/vpp/html, cache size 0 bytes, limit 1000000 bytes, evictions 0
Change-Id: I0f660753317ceedab89da1b65701a24d6f7145de
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Diffstat (limited to 'src/plugins/http_static/http_static.c')
-rw-r--r-- | src/plugins/http_static/http_static.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/plugins/http_static/http_static.c b/src/plugins/http_static/http_static.c index d4ec2983680..41601f96321 100644 --- a/src/plugins/http_static/http_static.c +++ b/src/plugins/http_static/http_static.c @@ -26,6 +26,8 @@ /* define message IDs */ #include <http_static/http_static_msg_enum.h> +#include <vpp/api/types.h> + /* define message structures */ #define vl_typedefs #include <http_static/http_static_all_api_h.h> @@ -64,14 +66,22 @@ static void vl_api_http_static_enable_t_handler vl_api_http_static_enable_reply_t *rmp; http_static_main_t *hmp = &http_static_main; int rv; + u8 *www_root; + u8 *uri; + + char *p = (char *) &mp->www_root; + www_root = + format (0, "%s%c", vl_api_from_api_string_c ((vl_api_string_t *) p), 0), + p += vl_api_string_len ((vl_api_string_t *) p) + sizeof (vl_api_string_t); + uri = + format (0, "%s%c", vl_api_from_api_string_c ((vl_api_string_t *) p), 0); - mp->uri[ARRAY_LEN (mp->uri) - 1] = 0; - mp->www_root[ARRAY_LEN (mp->www_root) - 1] = 0; rv = http_static_server_enable_api - (ntohl (mp->fifo_size), ntohl (mp->cache_size_limit), + (ntohl (mp->fifo_size), + ntohl (mp->cache_size_limit), ntohl (mp->prealloc_fifos), - ntohl (mp->private_segment_size), mp->www_root, mp->uri); + ntohl (mp->private_segment_size), www_root, uri); REPLY_MACRO (VL_API_HTTP_STATIC_ENABLE_REPLY); } |