diff options
| author | Francesco Colista <fcolista@alpinelinux.org> | 2019-07-22 11:32:34 +0000 |
|---|---|---|
| committer | Francesco Colista <fcolista@alpinelinux.org> | 2019-07-22 11:32:39 +0000 |
| commit | d6e59d9cef7cef32cd7eb5da2ed8a64ed876e2f5 (patch) | |
| tree | 26ae40f0262a42ee8f57cdc09bd2c0b9cb8d1aab /testing/openvas-smb/disable-backtrace.patch | |
| parent | a7e7817851bde69519f08cbcccc9c11ef06e539b (diff) | |
| download | aports-d6e59d9cef7cef32cd7eb5da2ed8a64ed876e2f5.tar.bz2 aports-d6e59d9cef7cef32cd7eb5da2ed8a64ed876e2f5.tar.xz | |
testing/openvas-smb: new aport
Diffstat (limited to 'testing/openvas-smb/disable-backtrace.patch')
| -rw-r--r-- | testing/openvas-smb/disable-backtrace.patch | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/testing/openvas-smb/disable-backtrace.patch b/testing/openvas-smb/disable-backtrace.patch new file mode 100644 index 0000000000..f5e0ef819f --- /dev/null +++ b/testing/openvas-smb/disable-backtrace.patch @@ -0,0 +1,135 @@ +diff --git a/samba/include/config.h b/samba/include/config.h +index b99c4d5..dd85ee4 100644 +--- a/samba/include/config.h ++++ b/samba/include/config.h +@@ -38,7 +38,7 @@ + /* #define HAVE_ATTR_XATTR_H 1 */ + + /* Define to 1 if you have the `backtrace' function. */ +-#define HAVE_BACKTRACE 1 ++#define HAVE_BACKTRACE 0 + + /* Define to 1 if you have the <blkid/blkid.h> header file. */ + /* #undef HAVE_BLKID_BLKID_H */ +diff --git a/samba/include/config_tmp.h b/samba/include/config_tmp.h +index e85cb77..9c7e93c 100644 +--- a/samba/include/config_tmp.h ++++ b/samba/include/config_tmp.h +@@ -38,7 +38,7 @@ + #define HAVE_ATTR_XATTR_H 1 + + /* Define to 1 if you have the `backtrace' function. */ +-#define HAVE_BACKTRACE 1 ++#define HAVE_BACKTRACE 0 + + /* Define to 1 if you have the <blkid/blkid.h> header file. */ + /* #undef HAVE_BLKID_BLKID_H */ +diff --git a/samba/lib/util/fault.c b/samba/lib/util/fault.c +index c7d6b7e..a9cdabb 100644 +--- a/samba/lib/util/fault.c ++++ b/samba/lib/util/fault.c +@@ -36,83 +36,6 @@ static struct { + + static const char *progname; + +-#ifdef HAVE_BACKTRACE +-#include <execinfo.h> +-#elif HAVE_LIBEXC_H +-#include <libexc.h> +-#endif +- +-/** +- * Write backtrace to debug log +- */ +-_PUBLIC_ void call_backtrace(void) +-{ +-#ifdef HAVE_BACKTRACE +-#ifndef BACKTRACE_STACK_SIZE +-#define BACKTRACE_STACK_SIZE 64 +-#endif +- void *backtrace_stack[BACKTRACE_STACK_SIZE]; +- size_t backtrace_size; +- char **backtrace_strings; +- +- /* get the backtrace (stack frames) */ +- backtrace_size = backtrace(backtrace_stack,BACKTRACE_STACK_SIZE); +- backtrace_strings = backtrace_symbols(backtrace_stack, backtrace_size); +- +- DEBUG(0, ("BACKTRACE: %lu stack frames:\n", +- (unsigned long)backtrace_size)); +- +- if (backtrace_strings) { +- int i; +- +- for (i = 0; i < backtrace_size; i++) +- DEBUGADD(0, (" #%u %s\n", i, backtrace_strings[i])); +- +- /* Leak the backtrace_strings, rather than risk what free() might do */ +- } +- +-#elif HAVE_LIBEXC +- +-#define NAMESIZE 32 /* Arbitrary */ +-#ifndef BACKTRACE_STACK_SIZE +-#define BACKTRACE_STACK_SIZE 64 +-#endif +- +- /* The IRIX libexc library provides an API for unwinding the stack. See +- * libexc(3) for details. Apparantly trace_back_stack leaks memory, but +- * since we are about to abort anyway, it hardly matters. +- * +- * Note that if we paniced due to a SIGSEGV or SIGBUS (or similar) this +- * will fail with a nasty message upon failing to open the /proc entry. +- */ +- { +- uint64_t addrs[BACKTRACE_STACK_SIZE]; +- char * names[BACKTRACE_STACK_SIZE]; +- char namebuf[BACKTRACE_STACK_SIZE * NAMESIZE]; +- +- int i; +- int levels; +- +- ZERO_ARRAY(addrs); +- ZERO_ARRAY(names); +- ZERO_ARRAY(namebuf); +- +- for (i = 0; i < BACKTRACE_STACK_SIZE; i++) { +- names[i] = namebuf + (i * NAMESIZE); +- } +- +- levels = trace_back_stack(0, addrs, names, +- BACKTRACE_STACK_SIZE, NAMESIZE); +- +- DEBUG(0, ("BACKTRACE: %d stack frames:\n", levels)); +- for (i = 0; i < levels; i++) { +- DEBUGADD(0, (" #%d 0x%llx %s\n", i, addrs[i], names[i])); +- } +- } +-#undef NAMESIZE +-#endif +-} +- + _PUBLIC_ const char *panic_action = NULL; + + /** +@@ -143,8 +66,6 @@ _PUBLIC_ void smb_panic(const char *why) + } + DEBUG(0,("PANIC: %s\n", why)); + +- call_backtrace(); +- + #ifdef SIGABRT + CatchSignal(SIGABRT,SIGNAL_CAST SIG_DFL); + #endif +diff --git a/samba/lib/util/util_proto.h b/samba/lib/util/util_proto.h +index efc787f..bb48f46 100644 +--- a/samba/lib/util/util_proto.h ++++ b/samba/lib/util/util_proto.h +@@ -44,7 +44,6 @@ _PUBLIC_ void register_debug_handlers(const char *name, struct debug_ops *ops); + + /* The following definitions come from lib/util/fault.c */ + +-_PUBLIC_ void call_backtrace(void); + _PUBLIC_ void smb_panic(const char *why); + _PUBLIC_ void fault_setup(const char *pname); + _PUBLIC_ BOOL register_fault_handler(const char *name, void (*fault_handler)(int sig)); |
