From 716ca530e1c4515d8683c9d5be3d56b301758b66 Mon Sep 17 00:00:00 2001 From: James <> Date: Wed, 4 Nov 2015 11:49:21 +0000 Subject: trunk-47381 --- .../samba36/patches/310-remove_error_strings.patch | 253 +++++++++++++++++++++ 1 file changed, 253 insertions(+) create mode 100644 package/network/services/samba36/patches/310-remove_error_strings.patch (limited to 'package/network/services/samba36/patches/310-remove_error_strings.patch') diff --git a/package/network/services/samba36/patches/310-remove_error_strings.patch b/package/network/services/samba36/patches/310-remove_error_strings.patch new file mode 100644 index 0000000..8c7ae2d --- /dev/null +++ b/package/network/services/samba36/patches/310-remove_error_strings.patch @@ -0,0 +1,253 @@ +--- a/libcli/util/doserr.c ++++ b/libcli/util/doserr.c +@@ -28,6 +28,7 @@ struct werror_code_struct { + + static const struct werror_code_struct dos_errs[] = + { ++#ifdef VERBOSE_ERROR + { "WERR_OK", WERR_OK }, + { "WERR_BADFILE", WERR_BADFILE }, + { "WERR_ACCESS_DENIED", WERR_ACCESS_DENIED }, +@@ -2668,6 +2669,7 @@ static const struct werror_code_struct d + { "WERR_AMBIGUOUS_SYSTEM_DEVICE", WERR_AMBIGUOUS_SYSTEM_DEVICE }, + { "WERR_SYSTEM_DEVICE_NOT_FOUND", WERR_SYSTEM_DEVICE_NOT_FOUND }, + /* END GENERATED-WIN32-ERROR-CODES */ ++#endif + { NULL, W_ERROR(0) } + }; + +@@ -2684,12 +2686,14 @@ const char *win_errstr(WERROR werror) + static char msg[40]; + int idx = 0; + ++#ifdef VERBOSE_ERROR + while (dos_errs[idx].dos_errstr != NULL) { + if (W_ERROR_V(dos_errs[idx].werror) == + W_ERROR_V(werror)) + return dos_errs[idx].dos_errstr; + idx++; + } ++#endif + + slprintf(msg, sizeof(msg), "DOS code 0x%08x", W_ERROR_V(werror)); + +@@ -2702,6 +2706,7 @@ struct werror_str_struct { + }; + + const struct werror_str_struct dos_err_strs[] = { ++#ifdef VERBOSE_ERROR + { WERR_OK, "Success" }, + { WERR_ACCESS_DENIED, "Access is denied" }, + { WERR_INVALID_PARAM, "Invalid parameter" }, +@@ -5324,6 +5329,7 @@ const struct werror_str_struct dos_err_s + { WERR_AMBIGUOUS_SYSTEM_DEVICE, "The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria." }, + { WERR_SYSTEM_DEVICE_NOT_FOUND, "The requested system device cannot be found." }, + /* END GENERATED-WIN32-ERROR-CODES-DESC */ ++#endif + }; + + +@@ -5334,6 +5340,7 @@ const struct werror_str_struct dos_err_s + + const char *get_friendly_werror_msg(WERROR werror) + { ++#ifdef VERBOSE_ERROR + int i = 0; + + for (i = 0; i < ARRAY_SIZE(dos_err_strs); i++) { +@@ -5342,6 +5349,7 @@ const char *get_friendly_werror_msg(WERR + return dos_err_strs[i].friendly_errstr; + } + } ++#endif + + return win_errstr(werror); + } +--- a/librpc/ndr/libndr.h ++++ b/librpc/ndr/libndr.h +@@ -604,4 +604,20 @@ _PUBLIC_ enum ndr_err_code ndr_push_enum + + _PUBLIC_ void ndr_print_bool(struct ndr_print *ndr, const char *name, const bool b); + ++#ifndef VERBOSE_ERROR ++#define ndr_print_bool(...) do {} while (0) ++#define ndr_print_struct(...) do {} while (0) ++#define ndr_print_null(...) do {} while (0) ++#define ndr_print_enum(...) do {} while (0) ++#define ndr_print_bitmap_flag(...) do {} while (0) ++#define ndr_print_ptr(...) do {} while (0) ++#define ndr_print_union(...) do {} while (0) ++#define ndr_print_bad_level(...) do {} while (0) ++#define ndr_print_array_uint8(...) do {} while (0) ++#define ndr_print_string_array(...) do {} while (0) ++#define ndr_print_string_array(...) do {} while (0) ++#define ndr_print_NTSTATUS(...) do {} while (0) ++#define ndr_print_WERROR(...) do {} while (0) ++#endif ++ + #endif /* __LIBNDR_H__ */ +--- a/librpc/ndr/ndr_basic.c ++++ b/librpc/ndr/ndr_basic.c +@@ -31,6 +31,19 @@ + #define NDR_SIVAL(ndr, ofs, v) do { if (NDR_BE(ndr)) { RSIVAL(ndr->data,ofs,v); } else SIVAL(ndr->data,ofs,v); } while (0) + #define NDR_SIVALS(ndr, ofs, v) do { if (NDR_BE(ndr)) { RSIVALS(ndr->data,ofs,v); } else SIVALS(ndr->data,ofs,v); } while (0) + ++#undef ndr_print_bool ++#undef ndr_print_struct ++#undef ndr_print_null ++#undef ndr_print_enum ++#undef ndr_print_bitmap_flag ++#undef ndr_print_ptr ++#undef ndr_print_union ++#undef ndr_print_bad_level ++#undef ndr_print_array_uint8 ++#undef ndr_print_string_array ++#undef ndr_print_string_array ++#undef ndr_print_NTSTATUS ++#undef ndr_print_WERROR + + /* + check for data leaks from the server by looking for non-zero pad bytes +--- a/librpc/ndr/ndr_string.c ++++ b/librpc/ndr/ndr_string.c +@@ -588,6 +588,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_stri + return NDR_ERR_SUCCESS; + } + ++#undef ndr_print_string_array + _PUBLIC_ void ndr_print_string_array(struct ndr_print *ndr, const char *name, const char **a) + { + uint32_t count; +--- a/librpc/rpc/dcerpc_error.c ++++ b/librpc/rpc/dcerpc_error.c +@@ -31,6 +31,7 @@ struct dcerpc_fault_table { + static const struct dcerpc_fault_table dcerpc_faults[] = + { + #define _FAULT_STR(x) { #x , x } ++#ifdef VERBOSE_ERROR + _FAULT_STR(DCERPC_NCA_S_COMM_FAILURE), + _FAULT_STR(DCERPC_NCA_S_OP_RNG_ERROR), + _FAULT_STR(DCERPC_NCA_S_UNKNOWN_IF), +@@ -78,6 +79,7 @@ static const struct dcerpc_fault_table d + _FAULT_STR(DCERPC_NCA_S_FAULT_CODESET_CONV_ERROR), + _FAULT_STR(DCERPC_NCA_S_FAULT_OBJECT_NOT_FOUND), + _FAULT_STR(DCERPC_NCA_S_FAULT_NO_CLIENT_STUB), ++#endif + { NULL, 0 } + #undef _FAULT_STR + }; +@@ -87,12 +89,14 @@ _PUBLIC_ const char *dcerpc_errstr(TALLO + int idx = 0; + WERROR werr = W_ERROR(fault_code); + ++#ifdef VERBOSE_ERROR + while (dcerpc_faults[idx].errstr != NULL) { + if (dcerpc_faults[idx].faultcode == fault_code) { + return dcerpc_faults[idx].errstr; + } + idx++; + } ++#endif + + return win_errstr(werr); + } +--- a/source3/libsmb/nterr.c ++++ b/source3/libsmb/nterr.c +@@ -702,6 +702,7 @@ const char *nt_errstr(NTSTATUS nt_code) + NT_STATUS_DOS_CODE(nt_code)); + } + ++#ifdef VERBOSE_ERROR + while (nt_errs[idx].nt_errstr != NULL) { + if (NT_STATUS_V(nt_errs[idx].nt_errcode) == + NT_STATUS_V(nt_code)) { +@@ -709,6 +710,7 @@ const char *nt_errstr(NTSTATUS nt_code) + } + idx++; + } ++#endif + + result = talloc_asprintf(talloc_tos(), "NT code 0x%08x", + NT_STATUS_V(nt_code)); +@@ -724,12 +726,14 @@ const char *get_friendly_nt_error_msg(NT + { + int idx = 0; + ++#ifdef VERBOSE_ERROR + while (nt_err_desc[idx].nt_errstr != NULL) { + if (NT_STATUS_V(nt_err_desc[idx].nt_errcode) == NT_STATUS_V(nt_code)) { + return nt_err_desc[idx].nt_errstr; + } + idx++; + } ++#endif + + /* fall back to NT_STATUS_XXX string */ + +@@ -745,6 +749,7 @@ const char *get_nt_error_c_code(NTSTATUS + char *result; + int idx = 0; + ++#ifdef VERBOSE_ERROR + while (nt_errs[idx].nt_errstr != NULL) { + if (NT_STATUS_V(nt_errs[idx].nt_errcode) == + NT_STATUS_V(nt_code)) { +@@ -752,6 +757,7 @@ const char *get_nt_error_c_code(NTSTATUS + } + idx++; + } ++#endif + + result = talloc_asprintf(talloc_tos(), "NT_STATUS(0x%08x)", + NT_STATUS_V(nt_code)); +@@ -767,12 +773,14 @@ NTSTATUS nt_status_string_to_code(const + { + int idx = 0; + ++#ifdef VERBOSE_ERROR + while (nt_errs[idx].nt_errstr != NULL) { + if (strcasecmp(nt_errs[idx].nt_errstr, nt_status_str) == 0) { + return nt_errs[idx].nt_errcode; + } + idx++; + } ++#endif + return NT_STATUS_UNSUCCESSFUL; + } + +--- a/lib/tdb/common/tdb_private.h ++++ b/lib/tdb/common/tdb_private.h +@@ -69,7 +69,11 @@ typedef uint32_t tdb_off_t; + /* NB assumes there is a local variable called "tdb" that is the + * current context, also takes doubly-parenthesized print-style + * argument. */ ++#ifdef VERBOSE_DEBUG + #define TDB_LOG(x) tdb->log.log_fn x ++#else ++#define TDB_LOG(x) do {} while(0) ++#endif + + #ifdef TDB_TRACE + void tdb_trace(struct tdb_context *tdb, const char *op); +--- a/source3/script/mkbuildoptions.awk ++++ b/source3/script/mkbuildoptions.awk +@@ -55,7 +55,7 @@ BEGIN { + print "****************************************************************************/"; + print "void build_options(bool screen)"; + print "{"; +- print " if ((DEBUGLEVEL < 4) && (!screen)) {"; ++ print " if ((DEBUGLEVEL < 4) || (!screen)) {"; + print " return;"; + print " }"; + print ""; +--- a/source3/script/mkbuildoptions-waf.awk ++++ b/source3/script/mkbuildoptions-waf.awk +@@ -55,7 +55,7 @@ BEGIN { + print "****************************************************************************/"; + print "void build_options(bool screen)"; + print "{"; +- print " if ((DEBUGLEVEL < 4) && (!screen)) {"; ++ print " if ((DEBUGLEVEL < 4) || (!screen)) {"; + print " return;"; + print " }"; + print ""; -- cgit v1.2.3