Virgil IoT KIT
fldt-server.h
Go to the documentation of this file.
1 // Copyright (C) 2015-2020 Virgil Security, Inc.
2 //
3 // All rights reserved.
4 //
5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are
7 // met:
8 //
9 // (1) Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 //
12 // (2) Redistributions in binary form must reproduce the above copyright
13 // notice, this list of conditions and the following disclaimer in
14 // the documentation and/or other materials provided with the
15 // distribution.
16 //
17 // (3) Neither the name of the copyright holder nor the names of its
18 // contributors may be used to endorse or promote products derived from
19 // this software without specific prior written permission.
20 //
21 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR
22 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
23 // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24 // DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
25 // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
26 // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
29 // STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 // IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 // POSSIBILITY OF SUCH DAMAGE.
32 //
33 // Lead Maintainer: Virgil Security Inc. <support@virgilsecurity.com>
34 
87 #ifndef VS_SECURITY_SDK_SNAP_SERVICES_FLDT_SERVER_H
88 #define VS_SECURITY_SDK_SNAP_SERVICES_FLDT_SERVER_H
89 
90 #if FLDT_SERVER
91 
95 
96 #ifdef __cplusplus
97 namespace VirgilIoTKit {
98 extern "C" {
99 #endif
100 
116  vs_update_interface_t **update_ctx);
117 
127 const vs_snap_service_t *
128 vs_snap_fldt_server(const vs_mac_addr_t *gateway_mac, vs_fldt_server_add_filetype_cb add_filetype);
129 
143  vs_update_interface_t *update_context,
144  bool broadcast_file_info);
145 
146 #ifdef __cplusplus
147 } // extern "C"
148 } // namespace VirgilIoTKit
149 #endif
150 
151 #endif // FLDT_SERVER
152 
153 #endif // VS_SECURITY_SDK_SNAP_SERVICES_FLDT_SERVER_H
vs_snap_fldt_server
const vs_snap_service_t * vs_snap_fldt_server(const vs_mac_addr_t *gateway_mac, vs_fldt_server_add_filetype_cb add_filetype)
FLDT Server SNAP Service implementation.
vs_update_file_type_t
File type information.
Definition: update.h:70
vs_fldt_server_add_filetype_cb
vs_status_e(* vs_fldt_server_add_filetype_cb)(const vs_update_file_type_t *file_type, vs_update_interface_t **update_ctx)
Add new file type callback.
Definition: fldt-server.h:115
vs_status_e
vs_status_e
Status code.
Definition: status_code.h:77
vs_mac_addr_t
MAC address.
Definition: snap-structs.h:252
update.h
Update interface for files downloading.
vs_fldt_server_add_file_type
vs_status_e vs_fldt_server_add_file_type(const vs_update_file_type_t *file_type, vs_update_interface_t *update_context, bool broadcast_file_info)
Add file type.
status_code.h
Status codes and macroses.
snap-structs.h
SNAP structures.
vs_snap_service_t
SNAP service descriptor.
Definition: snap-structs.h:312
vs_update_interface_t
Update interface context.
Definition: update.h:284