smbXsrv_session: Remove a "can't happen" NULL check
[Samba.git] / source3 / utils / status_json.h
blobef5d18139be85777281af70ebf734a3bca9c890a
1 /*
2 * Samba Unix/Linux SMB client library
3 * Json output
4 * Copyright (C) Jule Anger 2022
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 3 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #include "status.h"
21 #include "smbd/notifyd/notifyd_db.h"
23 #ifndef STATUS_JSON_H
24 #define STATUS_JSON_H
26 int add_section_to_json(struct traverse_state *state,
27 const char *key);
29 int add_general_information_to_json(struct traverse_state *state);
31 int add_profile_item_to_json(struct traverse_state *state,
32 const char *section,
33 const char *subsection,
34 const char *key,
35 uintmax_t value);
37 int traverse_connections_json(struct traverse_state *state,
38 const struct connections_data *crec,
39 const char *encryption_cipher,
40 enum crypto_degree encryption_degree,
41 const char *signing_cipher,
42 enum crypto_degree signing_degree);
44 int traverse_sessionid_json(struct traverse_state *state,
45 struct sessionid *session,
46 char *uid_str,
47 char *gid_str,
48 const char *encryption_cipher,
49 enum crypto_degree encryption_degree,
50 const char *signing_cipher,
51 enum crypto_degree signing_degree,
52 const char *connection_dialect);
54 int print_share_mode_json(struct traverse_state *state,
55 const struct share_mode_data *d,
56 const struct share_mode_entry *e,
57 struct file_id fid,
58 const char *uid_str,
59 const char *op_str,
60 uint32_t lease_type,
61 const char *filename);
63 int print_brl_json(struct traverse_state *state,
64 const struct server_id server_id,
65 struct file_id fid,
66 const char *type,
67 enum brl_flavour flavour,
68 intmax_t start,
69 intmax_t size,
70 const char *sharepath,
71 const char *filename);
73 bool print_notify_rec_json(struct traverse_state *state,
74 const struct notify_instance *instance,
75 const struct server_id server_id,
76 const char *path);
77 #endif