From ffbd9c4584d83c56e58901bc91effa75ebdcbb02 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Mon, 28 Dec 2015 22:21:11 +0000 Subject: [PATCH] Add a new header file for functions in lib/util/util.c. This allows public headers to not include samba_util.h, but rather specific header files under lib/util. Signed-Off-By: Jelmer Vernooij Reviewed-By: Andrew Bartlett Reviewed-By: Stefan Metzmacher --- lib/util/samba_util.h | 31 ++---------------------- lib/util/util.h | 53 +++++++++++++++++++++++++++++++++++++++++ lib/util/wscript_build | 3 +-- libcli/nbt/libnbt.h | 2 ++ librpc/ndr/libndr.h | 6 +++-- librpc/ndr/ndr_basic.c | 1 + librpc/rpc/rpc_common.h | 1 + 7 files changed, 64 insertions(+), 33 deletions(-) create mode 100644 lib/util/util.h diff --git a/lib/util/samba_util.h b/lib/util/samba_util.h index d2868d76466..1f265e8490b 100644 --- a/lib/util/samba_util.h +++ b/lib/util/samba_util.h @@ -61,6 +61,8 @@ extern const char *panic_action; #include "fault.h" +#include "lib/util/util.h" + /** * Write backtrace to debug log */ @@ -582,35 +584,6 @@ _PUBLIC_ bool process_exists_by_pid(pid_t pid); **/ _PUBLIC_ bool fcntl_lock(int fd, int op, off_t offset, off_t count, int type); -/** - * Write dump of binary data to a callback - */ -void dump_data_cb(const uint8_t *buf, int len, - bool omit_zero_bytes, - void (*cb)(const char *buf, void *private_data), - void *private_data); - -/** - * Write dump of binary data to a FILE - */ -void dump_data_file(const uint8_t *buf, int len, bool omit_zero_bytes, - FILE *f); - -/** - * Write dump of binary data to the log file. - * - * The data is only written if the log level is at least level. - */ -_PUBLIC_ void dump_data(int level, const uint8_t *buf,int len); - -/** - * Write dump of binary data to the log file. - * - * The data is only written if the log level is at least level for - * debug class dbgc_class. - */ -_PUBLIC_ void dump_data_dbgc(int dbgc_class, int level, const uint8_t *buf, int len); - /** * Write dump of binary data to the log file. * diff --git a/lib/util/util.h b/lib/util/util.h new file mode 100644 index 00000000000..5a0ce5cdb2a --- /dev/null +++ b/lib/util/util.h @@ -0,0 +1,53 @@ +/* + Unix SMB/CIFS implementation. + Utility functions for Samba + Copyright (C) Andrew Tridgell 1992-1999 + Copyright (C) Jelmer Vernooij 2005 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#ifndef __UTIL_SAMBA_UTIL_H__ +#define __UTIL_SAMBA_UTIL_H__ + +/** + * Write dump of binary data to a callback + */ +void dump_data_cb(const uint8_t *buf, int len, + bool omit_zero_bytes, + void (*cb)(const char *buf, void *private_data), + void *private_data); + +/** + * Write dump of binary data to a FILE + */ +void dump_data_file(const uint8_t *buf, int len, bool omit_zero_bytes, + FILE *f); + +/** + * Write dump of binary data to the log file. + * + * The data is only written if the log level is at least level. + */ +_PUBLIC_ void dump_data(int level, const uint8_t *buf,int len); + +/** + * Write dump of binary data to the log file. + * + * The data is only written if the log level is at least level for + * debug class dbgc_class. + */ +_PUBLIC_ void dump_data_dbgc(int dbgc_class, int level, const uint8_t *buf, int len); + +#endif diff --git a/lib/util/wscript_build b/lib/util/wscript_build index 226b15e31c7..c8ee8a0ddac 100755 --- a/lib/util/wscript_build +++ b/lib/util/wscript_build @@ -104,9 +104,8 @@ if not bld.env.SAMBA_UTIL_CORE_ONLY: server_id.c dprintf.c bitmap.c pidfile.c tevent_debug.c memcache.c''', deps='samba-util-core DYNCONFIG close-low-fd tini tiniparser genrand', - public_deps='talloc tevent execinfo pthread LIBCRYPTO charset util_setid systemd systemd-daemon', - public_headers='debug.h attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h samba_util.h string_wrappers.h idtree.h idtree_random.h blocking.h signal.h substitute.h fault.h genrand.h', + public_headers='debug.h attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h string_wrappers.h idtree.h idtree_random.h blocking.h signal.h substitute.h fault.h genrand.h', header_path= [ ('dlinklist.h samba_util.h', '.'), ('*', 'util') ], local_include=False, vnum='0.0.1', diff --git a/libcli/nbt/libnbt.h b/libcli/nbt/libnbt.h index c345a1fe2d0..fd0c7fea66d 100644 --- a/libcli/nbt/libnbt.h +++ b/libcli/nbt/libnbt.h @@ -24,6 +24,8 @@ #include "librpc/gen_ndr/nbt.h" #include "librpc/ndr/libndr.h" +#include "lib/util/xfile.h" + /* possible states for pending requests */ diff --git a/librpc/ndr/libndr.h b/librpc/ndr/libndr.h index 5c1487be203..c6116ed8119 100644 --- a/librpc/ndr/libndr.h +++ b/librpc/ndr/libndr.h @@ -26,8 +26,10 @@ #define __LIBNDR_H__ #include -#include -#include "../lib/util/samba_util.h" /* for discard_const */ +#include "../lib/util/memory.h" /* for discard_const */ +#include "../lib/util/byteorder.h" +#include "../lib/util/data_blob.h" +#include "../lib/util/time.h" #include "../lib/util/charset/charset.h" /* diff --git a/librpc/ndr/ndr_basic.c b/librpc/ndr/ndr_basic.c index ecc0f74fbe7..b532cc55b43 100644 --- a/librpc/ndr/ndr_basic.c +++ b/librpc/ndr/ndr_basic.c @@ -24,6 +24,7 @@ #include "librpc/ndr/libndr.h" #include "lib/util/util_net.h" #include "lib/util/debug.h" +#include "lib/util/util.h" #define NDR_SVAL(ndr, ofs) (NDR_BE(ndr)?RSVAL(ndr->data,ofs):SVAL(ndr->data,ofs)) #define NDR_IVAL(ndr, ofs) (NDR_BE(ndr)?RIVAL(ndr->data,ofs):IVAL(ndr->data,ofs)) diff --git a/librpc/rpc/rpc_common.h b/librpc/rpc/rpc_common.h index 28600c9da7c..b03b9ffc814 100644 --- a/librpc/rpc/rpc_common.h +++ b/librpc/rpc/rpc_common.h @@ -23,6 +23,7 @@ #define __DEFAULT_LIBRPC_RPCCOMMON_H__ #include "gen_ndr/dcerpc.h" +#include "lib/util/attr.h" struct dcerpc_binding_handle; struct GUID;