libvirt/src/util
Eric Blake 51fc56553f util: honor anchored names when searching for executables
I got bit in a debugging session on an uninstalled libvirtd; the
code tried to call out to the installed $LIBEXECDIR/libvirt_iohelper
instead of my just-built version.  So I set a breakpoint and altered
the binary name to be "./src/libvirt_iohelper", and it still failed
because I don't have "." on my PATH.

According to POSIX, execvp only searches PATH if the name does
not contain a slash.  Since we are trying to mimic that behavior,
an anchored name should be relative to the current working dir.

This tightens existing behavior, but most callers already pass
an absolute name or a name with no slashes, so it probably won't
be noticeable.

* src/util/util.c (virFindFileInPath): Anchored relative names do
not invoke a PATH search.
2011-07-13 07:30:42 -06:00
..
authhelper.c esx: Move username and password helper functions to authhelper.c 2010-03-16 20:15:32 +01:00
authhelper.h esx: Move username and password helper functions to authhelper.c 2010-03-16 20:15:32 +01:00
bitmap.c maint: rename virBufferVSprintf to virBufferAsprintf 2011-05-05 13:47:40 -06:00
bitmap.h Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
bridge.c maint: omit translation for all VIR_INFO 2011-05-11 15:20:33 -06:00
bridge.h Allow brAddTap to create a tap device that is down 2011-02-17 13:36:22 -05:00
buf.c buf: protect against integer overflow 2011-06-24 16:01:56 -06:00
buf.h buf: add virBufferVasprintf 2011-05-05 13:48:19 -06:00
cgroup.c cgroup: silence coverity warning 2011-07-04 10:28:27 +08:00
cgroup.h virsh: fix memtune's help message for swap_hard_limit 2011-03-17 16:45:06 -06:00
command.c build: use gnulib pthread_sigmask 2011-07-07 13:12:44 -06:00
command.h Move virRun, virExec*, virFork to util/command 2011-06-07 14:06:11 -04:00
conf.c maint: rename virBufferVSprintf to virBufferAsprintf 2011-05-05 13:47:40 -06:00
conf.h esx: Allow '-' in VMX entry names 2010-09-23 10:37:10 +02:00
dnsmasq.c Fix return value semantic of virFileMakePath 2011-07-06 09:27:06 +02:00
dnsmasq.h network: Don't ignore errors in dnsmasq config file creation 2011-06-29 02:04:55 +02:00
ebtables.c Move virRun, virExec*, virFork to util/command 2011-06-07 14:06:11 -04:00
ebtables.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
event_poll.c Use virTimeMs when appropriate 2011-06-13 11:24:58 +02:00
event_poll.h Move event code out of the daemon/ into src/util/ 2011-03-07 14:16:13 +00:00
event.c events: Correct virEventAddTimeout docs 2011-06-21 10:08:47 -04:00
event.h Promote virEvent*Handle/Timeout to public API 2011-06-21 10:08:47 -04:00
files.c deprecate fclose() and introduce VIR_{FORCE_}FCLOSE() 2010-11-16 21:13:29 -05:00
files.h Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
hash.c libvirt,logging: cleanup VIR_XXX0() 2011-05-11 12:41:14 -06:00
hash.h tests: More unit tests for internal hash APIs 2011-04-27 15:32:30 +02:00
hooks.c util: Initialize hooks at daemon shutdown if no hooks defined 2011-04-28 14:48:26 +08:00
hooks.h qemu: add two hook script events "prepare" and "release" 2011-03-22 21:12:36 +08:00
hostusb.c util: avoid PATH_MAX-sized array 2011-06-22 17:13:58 -06:00
hostusb.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
interface.c util: close the ioctl socket at the end of if(Get|Set)MacAddress 2011-07-06 20:16:51 -04:00
interface.h Rename iface(G|S)etMacaddr to iface(G|S)etMacAddress for consistency 2011-06-24 23:06:56 +02:00
iohelper.c virFDStream: Add option for delete file after it's opening 2011-05-13 12:44:49 +02:00
iptables.c Remove virConnectPtr from virRaiseErrorFull 2011-04-17 07:22:23 +02:00
iptables.h Update iptables.c to also support ip6tables. 2010-12-23 15:54:32 -05:00
json.c Remove bogus warning message in JSON code 2011-06-30 18:04:01 +01:00
json.h json: Fix *GetBoolean functions 2011-05-09 14:02:13 +02:00
logging.c build: fix VIR_DEBUG on mingw 2011-05-24 12:34:43 -06:00
logging.h build: avoid gcc preprocessor extensions 2011-05-11 13:28:50 -06:00
macvtap.c cleanup: make several interface functions commonly available 2011-06-22 14:28:57 -04:00
macvtap.h Remove macvtap dependency on domain configuration 2011-06-22 17:39:06 +01:00
memory.c build: fix cygwin strerror_r failure 2011-02-11 12:32:17 -07:00
memory.h build: make VIR_FREE do some type checking 2011-04-25 10:20:18 -06:00
netlink.c build: fix compilation on systems missing libnl and new includes 2011-06-23 11:54:11 -04:00
netlink.h build: fix compilation on systems missing libnl and new includes 2011-06-23 11:54:11 -04:00
network.c Remove virConnectPtr from virRaiseErrorFull 2011-04-17 07:22:23 +02:00
network.h Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
pci.c pci: initialize state values on reattach 2011-07-05 11:42:38 -06:00
pci.h pci: initialize state values on reattach 2011-07-05 11:42:38 -06:00
processinfo.c build: update gnulib 2010-05-06 14:35:38 -06:00
processinfo.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
qparams.c qparams.c: do not skip va_end, twice 2010-02-19 11:52:04 +01:00
qparams.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
sexpr.c sexpr: Improve serialization error reporting 2011-05-27 15:31:33 +02:00
sexpr.h Use virBufferPtr for sexpr2string instead of manual buffer handling 2011-04-05 09:14:59 +02:00
stats_linux.c Update and sort msg_gen_function list and mark unmarked messages 2011-04-18 19:05:15 +02:00
stats_linux.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_file.c storage: avoid mishandling backing store > 2GB 2011-06-08 05:18:46 -06:00
storage_file.h Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
sysinfo.c sysinfo: delete unnecessary white space of sysinfo. 2011-07-06 15:19:28 -06:00
sysinfo.h sysinfo: cleanup function/struct names. 2011-06-27 09:41:03 -06:00
threadpool.c Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
threadpool.h threadpool: allow NULL jobdata 2011-01-03 14:45:00 -07:00
threads-pthread.c threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-pthread.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-win32.c threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-win32.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads.c build: avoid pthreads-win32 on mingw 2010-06-10 06:05:31 -06:00
threads.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
util.c util: honor anchored names when searching for executables 2011-07-13 07:30:42 -06:00
util.h Keep pidfile path in qemuDomainObjPrivate struct 2011-07-12 15:39:03 +01:00
uuid.c bye to close(), welcome to VIR_(FORCE_)CLOSE() 2010-11-09 15:48:48 -05:00
uuid.h uuid: annotate non-null requirements 2011-06-08 05:28:20 -06:00
viraudit.c maint: rename virtaudit to match file contents 2011-07-12 07:24:43 -06:00
viraudit.h maint: rename virtaudit to match file contents 2011-07-12 07:24:43 -06:00
virterror_internal.h Remove virConnectPtr from virRaiseErrorFull 2011-04-17 07:22:23 +02:00
virterror.c util: Cleanup indention problem in virterror.c 2011-06-14 15:03:12 +08:00
xml.c xml: Make sure virXpathNodeSet always sets an error 2011-05-13 10:32:52 -04:00
xml.h util: add missing string->integer conversion functions 2011-01-13 15:10:40 -07:00