summaryrefslogtreecommitdiffstats
path: root/main.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-04-211-0/+30
|\| | | | | | | | | | | | | Conflicts: aclocal.m4 configure
| * PR10082: add environment variable to pass -r RELEASE/PATH optionKent Sebastian2009-04-171-0/+30
| |
* | 2009-04-20 Dave Brolley <brolley@redhat.com>Dave Brolley2009-04-201-0/+2
| | | | | | | | | | | | | | | | | | | | * main.cxx (main): Turn of guru_mode if --unprivileged is specified and vice-versa. * elaborate.h (unprivileged_whitelist): New member of match_node. * elaborate.cxx (match_node::match_node): Initialize unprivileged_whitelist. (match_node::find_and_build): In --unprivileged mode, throw a semantic_error for probe components which are not in uinprivileged_whitelist.
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-04-021-73/+4
|\| | | | | | | | | | | Conflicts: configure
| * PR10016: Purge stap of all pgrp and system() usageJosh Stone2009-04-011-73/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We hereby no longer try to manipulate process groups in any way. We don't set a private process group, and we never kill() our entire group either. Instead of using system(), we now have a stap_system() which saves the child PID, so when we get a terminating signal we can pass it along to the child. Signals sent through the TTY have always worked, since the TTY sends it to the entire pgrp. However, if we're running as part of a wrapper script or GUI, which may not have a separate process group for stap, we still would like to allow "kill -TERM $STAPPID" to terminate stap nicely. There's still a short window of failure in the time that staprun is active, because we can't kill a setuid process from a user process. Once staprun drops privileges and execs to stapio though, everything should work fine.
* | 2009-04-02 Dave Brolley <brolley@redhat.com>Dave Brolley2009-04-021-22/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stap-serverd (initialization): Create client certificate database if it does not exist. * stap-server (call_stap): Don't pass --sign-module to stap. * session.h (unprivileged): New member of systemtap_session. * modsign.cxx (init_cert_db_path, check_cert_db_path): New functions. (sign_module): Call check_cert_db_path. * main.cxx (usage): Document --signing-cert and --unprivileged. (runner): Set default signing certificate path. Initialize s.unprivileged. (LONG_OPT_SIGN_MODULE): Renamed to LONG_OPT_SIGNING_CERT. (LONG_OPT_UNPRIVILEGED): #define it. (long_options): Add --signing-cert and --unprivileged. (runner): Allow multiple --signing-cert options. Use the last specified. Don't reset unless the new setting is valid. Handle LONG_OPT_UNPRIVILEGED.
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-03-311-0/+64
|\|
| * PR10016: Run stap in its own process group with waiter process for signals.Mark Wielaard2009-03-311-2/+56
| | | | | | | | | | | | | | * main.cxx (runner): New main function. (waiter_handler): Signal handler for waiter process. (waiter): Waiter process waitpid function. (main): Fork and run wait and runner in their own processes.
| * PR10016: systemtap kills all processes in process group on signal.Mark Wielaard2009-03-301-0/+10
| | | | | | | | * main.cxx (main): Make sure we run in our own process group.
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-03-301-0/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: aclocal.m4 configure testsuite/aclocal.m4 Also: 2009-03-30 Dave Brolley <brolley@redhat.com> * nsscommon.c (nssError): Handle SEC_ERROR_BAD_SIGNATURE. 2009-03-30 Dave Brolley <brolley@redhat.com> * modverify.c (verify_it): Print a message if the module may have been tampered with.
| * initialize skip_badvars=0. rererenag developers in session.h to do so in ↵Frank Ch. Eigler2009-03-271-0/+1
| | | | | | | | the future
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-03-231-3/+11
|\|
| * PR9821: staprun supports subset of strftime.Masami Hiramatsu2009-03-201-1/+3
| | | | | | | | | | Add strftime subset format support for output file name to systemtap. This format will be evaluated when opening a new output file.
| * PR6930: stap: supports on-file flight recorder optionsMasami Hiramatsu2009-03-201-2/+8
| | | | | | | | | | | | | | Add on-file flight recorder options (the combination of -F and -o, and -S option) to stap command, and change manpages and NEWS. - Both of -F and -o is specified, stap passes -D option to staprun. - stap just passes -S option to staprun.
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-03-161-2/+12
|\| | | | | | | | | | | | | | | | | Conflicts: Makefile.in main.cxx stap-find-servers stap-start-server
| * PR 7071: Optional $context variables fixRajan Arora2009-03-111-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol): Substitute erroneous target symbol with literal 0 if session level flag, skip_badvars is set. * session.h (struct systemtap_session): New flag: skip_badvars. * main.cxx: Command line argument --skip-badvars added. * stap.1.in: Entry for new option --skip-badvars. * NEWS: Added blurb for new option now available. * testsuite/semok/badvar.stp: Test case to check added functionality.
| * Make tracepoint probe support listing mode -LWenji Huang2009-03-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is to enable displaying arguments of tracepoint probe in listing mode -L. The example output is like $stap -L 'kernel.trace("block_bio*")' kernel.trace("block_bio_bounce") $q:struct request_queue* $bio:struct bio* kernel.trace("block_bio_backmerge") $q:struct request_queue* $bio:struct bio* kernel.trace("block_bio_complete") $q:struct request_queue* $bio:struct bio* kernel.trace("block_bio_queue") $q:struct request_queue* $bio:struct bio* kernel.trace("block_bio_frontmerge") $q:struct request_queue* $bio:struct bio* Signed-off-by: Wenji Huang <wenji.huang@oracle.com>
* | 2009-03-12 Dave Brolley <brolley@redhat.com>Dave Brolley2009-03-121-0/+55
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * util.cxx (remove_file_or_dir): New function. * util.h (remove_file_or_dir): New function. * systemtap.spec (stap): Add stap-env, stap-gen-cert, stap-authorize-cert, and stap-authorize-signing-cert. (stap-client): Remove stap-find-or-start-server, stap-add-server-cert. Add stap-authorize-server-cert. (stap-server): Add stap-find-servers, stap-find-or-start-server, stap-authorize-server-cert. Remove stap-gen-server-cert. * stap-find-servers: Source stap-env. Use $stap_avahi_service_tag. (initialization): Set timeout to 10. (find_servers): Run avahi-browse in the background and wait for it. Use a temp file for the output of avahi-browse. Kill avahi-browse if the timeout expires. (match_server): Set read timeout. (fatal): New function. * stap-find-or-start-server: Source stap-env. Use $stap_exec_prefix. Always exit with 0. * stap-start-server: Source stap-env. Check for the server PID as a running process and for avahi-publish-service running as a child in order to verify that the server is ready. * stap-add-server-cert: Renamed to stap-authorize-server-cert. Source stap-env. Call stap-authorize-cert. * stap-client: Source stap-env. Use $stap_user_ssl_db and $stap_root_ssl_db. Use $stap_tmpdir_prefix_client, $stap_tmpdir_prefix_server. Use $stap_exec_prefix. (configuration): Removed. (staprun_running): Removed. (interrupt): Don't kill staprun. * stap-server: Source stap-env. Use $stap_user_ssl_db and $stap_root_ssl_db. Use $stap_tmpdir_prefix_client, $stap_tmpdir_prefix_server. Use $stap_exec_prefix. (configuration): Removed. * session.h (systemtap_session): Add cert_db_path. * runtime/staprun/staprun_funcs.c (config.h): #include it. (modverify.h): #include it. (check_signature): New function. (check_groups): New function extracted from check_permissions. (check_permissions): Call check_groups and check_signature. * runtime/staprun/mainloop.c (cleanup_and_exit): Pass modpath to staprun, not modname. * main.cxx (main): Initialize cert_db_path. Handle LONG_OPT_SIGN_MODULE. Save the module signature if the module was signed and is being saved. (LONG_OPT_SIGN_MODULE): #define it. (long_options): Add --sign-module. * cache.cxx (config.h): #include it. (add_to_cache): Add the module signature file to the cache if the module has been signed. * buildrun.cxx (modsign.h): #include it. (compile_pass): Call sign_module, if requested. * configure.ac: Define HAVE_NSS if NSS libraries are available. * Makefile.am (AM_CPPFLAGS): Add -DSYSCONFDIR. (bin_SCRIPTS): Add stap-env, stap-gen-cert, stap-authorize-cert, stap-authorize-signing-cert, stap-authorize-server-cert. Remove stap-gen-server-cert, stap-add-server-cert. (stap_SOURCES): Add nsscommon.c, modsign.cxx (stap_CPPFLAGS): Add $(nss_CFLAGS), $(nspr_CFLAGS). (stap_LDADD): Add -lnss3. (staprun_SOURCES): Add nsscommon.c. * modsign.cxx: New file. * modsign.h: New file. * nsscommon.c: New file. * nsscommon.h: New file. * runtime/staprun/modverify.c: New file. * runtime/staprun/modverify.h: New file. * stap-authorize-cert: New file. * stap-authorize-signing-cert: New file. * stap-env: New file. * Makefile.in: Regenerated. * aclocal.m4: Regenerated. * config.in: Regenerated. * configure: Regenerated. * doc/Makefile.in: Regenerated. * doc/SystemTap_Tapset_Reference/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * testsuite/aclocal.m4: Regenerated.
* Clean up the autoconf cachingJosh Stone2009-02-071-0/+1
| | | | | | | | | | | | | | | | | This makes the stapconf caching process quite a bit more transparent. The options are now cached in a header file as #defines, and this header file is a normal build dependency instead of calling so many make $(shell ...) commands. * buildrun.cxx (compile_pass): Pull in autoconf options in a header of #defines rather than -DXXX, and make that header a build dependency. * buildrun.cxx (output_autoconf): New function to consolidate the computation of each autoconf test. * cache.cxx (add_to_cache, get_from_cache, clean_cache): Start treating the stapconf header as a first-class cached item. * cache.h: Move definitions of things only needed in cache.cxx * hash.cxx (find_stapconf_hash): Generate stapconf_name as a .h now. * main.cxx (main): Default the stapconf_name based on getpid().
* copyright year bumpFrank Ch. Eigler2009-02-051-2/+2
|
* Add Vim modelines for GNU style in stapJosh Stone2009-01-281-0/+2
|
* PR5892: rename new -B /PATH to -r /PATH; merge functionalityFrank Ch. Eigler2008-12-031-48/+45
|
* BZ 5892: Add stap -B to sic systemtap at an alternate kernel build treeRajan Arora2008-12-011-9/+39
|
* buildrun/caching warning cleanupFrank Ch. Eigler2008-11-291-7/+14
|
* PR7035: don't suppress all error messages during listings modeWenji Huang2008-11-271-2/+2
|
* fix valgrind warning with setting s.verbose too late during initializationFrank Ch. Eigler2008-11-261-1/+4
|
* PR6925: improve upon "Try again with another -v option" messageFrank Ch. Eigler2008-11-261-5/+5
|
* fix --vp NNN logic for #chars < 5Frank Ch. Eigler2008-11-201-1/+1
|
* PR6925: --vp (per-pass verbosity) optionFrank Ch. Eigler2008-11-181-10/+39
|
* Functions implementing cache limiting.Kent Sebastian2008-10-101-1/+1
|
* add new stap -F (flight recorder) option that just passes through to staprun -LNobuhiro Tachino2008-09-161-1/+7
|
* Ensure that "stap -l ..." only prints probe names, not variables.Josh Stone2008-09-101-8/+9
|
* PR6876: translator speedup for many $varsFrank Ch. Eigler2008-09-101-2/+8
|
* add comments explaining why '-L' works; add NEWS blurb tooFrank Ch. Eigler2008-09-051-2/+3
|
* PR6731: Updated listing mode through adding -L option.Wenji Huang2008-09-051-15/+14
|
* PR6864: simplify usage() reportFrank Ch. Eigler2008-09-041-5/+4
|
* Merge commit 'origin/master' into pr4225Frank Ch. Eigler2008-09-011-0/+13
|\ | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': Fix memory access error in nfs.proc.read_setup, nfs.proc.write_setup and nfs.proc.commit_setup Update NEWS regarding the systemtap client/server. New man page for the systemtap client/server and related utilities. Repopulate symbol/type info. Pushed quiesce logic down into the task_finder layer. Added bug 6841 fix utrace syscall test. PR6731: improve listing mode to list variables
| * PR6731: improve listing mode to list variablesWenji Huang2008-08-281-0/+13
| |
* | Merge commit 'origin/master' into pr4225Frank Ch. Eigler2008-08-281-8/+8
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': PR5686: correct regression in semok/optimize.stp trailing whitespace removal, as approved by emacs fix global-var array index rendering fix NEWS to refer to simpler context.stp tapset functions in auto-printing blurb Document written but unread global variable automatic display. 2nd try initial Make _get_sock_addr return correct address in kernel before 2.6.16. Automatically print written but unread globals Make nodwf test passed when CONFIG_QUOTACTL unset Uses STAPCONF_DPATH_PATH instead of a kernel version check. Simplified "rpm" target a bit. Moved tar archive creation step from "rpm" target to "dist-gzip" target. remove support for "make dist" since git-archive does as well; Examples html files moved into subdir. 2008-08-25 David Smith <dsmith@redhat.com> ChangeLog Entries Robustness improvements for the stap client/server
| * trailing whitespace removal, as approved by emacsFrank Ch. Eigler2008-08-281-8/+8
| | | | | | | | (add-hook 'before-save-hook 'delete-trailing-whitespace)
* | PR4225 and PR6826: expand & canonicalize executable path names process probesFrank Ch. Eigler2008-08-091-19/+6
|/
* PR6030: control signal relay and accept deferred re-receptionFrank Ch. Eigler2008-07-171-3/+8
|
* PR6030: forward signals to children - stapio etc.anithra2008-07-171-1/+2
|
* disable caching if "-k" (save-temps) option is givenFrank Ch. Eigler2008-07-101-0/+1
|
* Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-07-041-1/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': ubuntu (2.6.24-16-server) kernel compatibility fix client/server take 2. See bz6565. Add functioncallcount.meta and functioncallcount.stp. Add para-callgraph.stp and para-callgraph.meta. Fixed __stp_get_mm_path() error return code. diagnostics improvement: print arch/mach at top if -vv Make _vfs.generic_commit_write only for kernel<=2.6.25 Handles "mortally wounded" threads correctly when detaching. further clarify that elfutils need not be absolutely freshest, nor rebuilt every time point out releases/ directory; clarify optionality of elfutils bundling Add auto_free_ref to auto_free stuff; bug 6694
| * diagnostics improvement: print arch/mach at top if -vvFrank Ch. Eigler2008-07-011-1/+6
| |
* | populate sess.unwindsym_modules set from dwarf probesFrank Ch. Eigler2008-06-231-3/+6
| |
* | add module-name vector to session object, command line argumentsFrank Ch. Eigler2008-06-231-1/+13
|/
* make "-p4 -m FOO" mode consistent with ordinary -p4Frank Ch. Eigler2008-06-131-2/+4
|
* Fix compile error caused by PATH_MAX in F9.Zhaolei2008-06-021-0/+1
|