aboutsummaryrefslogtreecommitdiff
blob: c6af4e4a6305874cce11f4d75143aca10ebe0ef0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env python2

import os
import sys

class logger:
  socketname=''
  # we can't use just file_hook.so here 
  # because program may change LD_LIBRARY_PATH
  hooklibpath='/usr/lib/file_hook.so'
  
  def __init__(self,socketname):
	self.socketname=socketname
	
  def execprog(self,prog_name,arguments):
	try:
	  env=os.environ.copy()
	  env["LD_PRELOAD"]=self.hooklibpath
	  env["LOG_SOCKET"]=self.socketname
	  
	  os.execvpe(prog_name, arguments, env)
	except OSError, e:
	  print "Failed to launch the programm: %s" % e
	  sys.exit(1)