| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | #include "master.h"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /* Snarfed from SBCL linux-so.c. You must free() this yourself. */ | 
					
						
							|  |  |  | const char *vm_executable_path(void) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	char *path = safe_malloc(PATH_MAX + 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	int size = readlink("/proc/self/exe", path, PATH_MAX); | 
					
						
							|  |  |  | 	if (size < 0) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		fatal_error("Cannot read /proc/self/exe",0); | 
					
						
							|  |  |  | 		return NULL; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 	else | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		path[size] = '\0'; | 
					
						
							|  |  |  | 		return safe_strdup(path); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2008-02-02 08:02:32 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | int inotify_init(void) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return syscall(SYS_inotify_init); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int inotify_add_watch(int fd, const char *name, u32 mask) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return syscall(SYS_inotify_add_watch, fd, name, mask); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int inotify_rm_watch(int fd, u32 wd) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return syscall(SYS_inotify_rm_watch, fd, wd); | 
					
						
							|  |  |  | } |