|
Matej Habrnal |
04b13c |
From 51531e9ea72af09571688a20f00e55cad5fe9c3a Mon Sep 17 00:00:00 2001
|
|
Matej Habrnal |
04b13c |
From: Jakub Filak <jfilak@redhat.com>
|
|
Matej Habrnal |
04b13c |
Date: Tue, 9 Feb 2016 17:55:29 +0100
|
|
Matej Habrnal |
04b13c |
Subject: [PATCH] ccpp: drop %e from the core_pattern
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
The argument is no longer need and it must be placed either at the end
|
|
Matej Habrnal |
04b13c |
of the command or enclosed with '' as it can contain white space.
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
Threads can have an arbitrary name:
|
|
Matej Habrnal |
04b13c |
man 3 pthread_setname_np
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
Signed-off-by: Jakub Filak <jfilak@redhat.com>
|
|
Matej Habrnal |
04b13c |
---
|
|
Matej Habrnal |
04b13c |
src/hooks/abrt-hook-ccpp.c | 16 ++++++++--------
|
|
Matej Habrnal |
04b13c |
src/hooks/abrt-install-ccpp-hook.in | 12 +-----------
|
|
Matej Habrnal |
04b13c |
2 files changed, 9 insertions(+), 19 deletions(-)
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c
|
|
Matej Habrnal |
04b13c |
index 8f1b813..dfe9526 100644
|
|
Matej Habrnal |
04b13c |
--- a/src/hooks/abrt-hook-ccpp.c
|
|
Matej Habrnal |
04b13c |
+++ b/src/hooks/abrt-hook-ccpp.c
|
|
Matej Habrnal |
04b13c |
@@ -143,9 +143,9 @@ static struct dump_dir *dd;
|
|
Matej Habrnal |
04b13c |
* %u - uid
|
|
Matej Habrnal |
04b13c |
* %g - gid
|
|
Matej Habrnal |
04b13c |
* %t - UNIX time of dump
|
|
Matej Habrnal |
04b13c |
- * %e - executable filename
|
|
Matej Habrnal |
04b13c |
- * %i - crash thread tid
|
|
Matej Habrnal |
04b13c |
* %P - global pid
|
|
Matej Habrnal |
04b13c |
+ * %I - crash thread tid
|
|
Matej Habrnal |
04b13c |
+ * %e - executable filename (can contain white spaces)
|
|
Matej Habrnal |
04b13c |
* %% - output one "%"
|
|
Matej Habrnal |
04b13c |
*/
|
|
Matej Habrnal |
04b13c |
/* Hook must be installed with exactly the same sequence of %c specifiers.
|
|
Matej Habrnal |
04b13c |
@@ -661,9 +661,9 @@ int main(int argc, char** argv)
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
if (argc < 8)
|
|
Matej Habrnal |
04b13c |
{
|
|
Matej Habrnal |
04b13c |
- /* percent specifier: %s %c %p %u %g %t %e %P %i*/
|
|
Matej Habrnal |
04b13c |
- /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]*/
|
|
Matej Habrnal |
04b13c |
- error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME BINARY_NAME GLOBAL_PID [TID]", argv[0]);
|
|
Matej Habrnal |
04b13c |
+ /* percent specifier: %s %c %p %u %g %t %P %T */
|
|
Matej Habrnal |
04b13c |
+ /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] */
|
|
Matej Habrnal |
04b13c |
+ error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME GLOBAL_PID GLOBAL_TID", argv[0]);
|
|
Matej Habrnal |
04b13c |
}
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
/* Not needed on 2.6.30.
|
|
Matej Habrnal |
04b13c |
@@ -704,8 +704,8 @@ int main(int argc, char** argv)
|
|
Matej Habrnal |
04b13c |
/* set to max possible >0 value */
|
|
Matej Habrnal |
04b13c |
ulimit_c = ~((off_t)1 << (sizeof(off_t)*8-1));
|
|
Matej Habrnal |
04b13c |
}
|
|
Matej Habrnal |
04b13c |
- const char *global_pid_str = argv[8];
|
|
Matej Habrnal |
04b13c |
- pid_t pid = xatoi_positive(argv[8]);
|
|
Matej Habrnal |
04b13c |
+ const char *global_pid_str = argv[7];
|
|
Matej Habrnal |
04b13c |
+ pid_t pid = xatoi_positive(argv[7]);
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
user_pwd = get_cwd(pid); /* may be NULL on error */
|
|
Matej Habrnal |
04b13c |
log_notice("user_pwd:'%s'", user_pwd);
|
|
Matej Habrnal |
04b13c |
@@ -867,7 +867,7 @@ int main(int argc, char** argv)
|
|
Matej Habrnal |
04b13c |
signal_no, signame, "dumping core");
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
pid_t tid = -1;
|
|
Matej Habrnal |
04b13c |
- const char *tid_str = argv[9];
|
|
Matej Habrnal |
04b13c |
+ const char *tid_str = argv[8];
|
|
Matej Habrnal |
04b13c |
if (tid_str)
|
|
Matej Habrnal |
04b13c |
{
|
|
Matej Habrnal |
04b13c |
tid = xatoi_positive(tid_str);
|
|
Matej Habrnal |
04b13c |
diff --git a/src/hooks/abrt-install-ccpp-hook.in b/src/hooks/abrt-install-ccpp-hook.in
|
|
Matej Habrnal |
04b13c |
index 707c57d..660c209 100755
|
|
Matej Habrnal |
04b13c |
--- a/src/hooks/abrt-install-ccpp-hook.in
|
|
Matej Habrnal |
04b13c |
+++ b/src/hooks/abrt-install-ccpp-hook.in
|
|
Matej Habrnal |
04b13c |
@@ -11,9 +11,7 @@ SAVED_PATTERN_DIR="@VAR_RUN@/abrt"
|
|
Matej Habrnal |
04b13c |
SAVED_PATTERN_FILE="@VAR_RUN@/abrt/saved_core_pattern"
|
|
Matej Habrnal |
04b13c |
HOOK_BIN="@libexecdir@/abrt-hook-ccpp"
|
|
Matej Habrnal |
04b13c |
# Must match percent_specifiers[] order in abrt-hook-ccpp.c:
|
|
Matej Habrnal |
04b13c |
-PATTERN="|$HOOK_BIN %s %c %p %u %g %t %e %P %I"
|
|
Matej Habrnal |
04b13c |
-# Same, but with bogus "executable name" parameter
|
|
Matej Habrnal |
04b13c |
-PATTERN1="|$HOOK_BIN %s %c %p %u %g %t e %P %I"
|
|
Matej Habrnal |
04b13c |
+PATTERN="|$HOOK_BIN %s %c %p %u %g %t %P %I"
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
# core_pipe_limit specifies how many dump_helpers can run at the same time
|
|
Matej Habrnal |
04b13c |
# 0 - means unlimited, but it's not guaranteed that /proc/<pid> of crashing
|
|
Matej Habrnal |
04b13c |
@@ -39,14 +37,6 @@ start() {
|
|
Matej Habrnal |
04b13c |
cur=`cat "$PATTERN_FILE"`
|
|
Matej Habrnal |
04b13c |
cur_first=`printf "%s" "$cur" | sed 's/ .*//'`
|
|
Matej Habrnal |
04b13c |
|
|
Matej Habrnal |
04b13c |
- # Is there a %e (executable name) in old pattern anywhere?
|
|
Matej Habrnal |
04b13c |
- if test x"${cur#*%e}" = x"${cur}"; then
|
|
Matej Habrnal |
04b13c |
- # No. Can use PATTERN with less risk of overflow
|
|
Matej Habrnal |
04b13c |
- # on expansion (executable names can be LONG).
|
|
Matej Habrnal |
04b13c |
- # Overflow would cause kernel to abort coredump. BAD.
|
|
Matej Habrnal |
04b13c |
- PATTERN="$PATTERN1"
|
|
Matej Habrnal |
04b13c |
- fi
|
|
Matej Habrnal |
04b13c |
-
|
|
Matej Habrnal |
04b13c |
$verbose && printf "cur:'%s'\n" "$cur"
|
|
Matej Habrnal |
04b13c |
# Is it already installed?
|
|
Matej Habrnal |
04b13c |
if test x"$cur_first" != x"|$HOOK_BIN"; then # no
|
|
Matej Habrnal |
04b13c |
--
|
|
Matej Habrnal |
04b13c |
2.5.0
|
|
Matej Habrnal |
04b13c |
|