Add `Settings::nixDaemonSocketFile'.
This commit is contained in:
		
							parent
							
								
									5ea138dc4b
								
							
						
					
					
						commit
						3e067ac11c
					
				
					 5 changed files with 14 additions and 10 deletions
				
			
		|  | @ -10,6 +10,14 @@ | ||||||
| namespace nix { | namespace nix { | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | /* The default location of the daemon socket, relative to nixStateDir.
 | ||||||
|  |    The socket is in a directory to allow you to control access to the | ||||||
|  |    Nix daemon by setting the mode/ownership of the directory | ||||||
|  |    appropriately.  (This wouldn't work on the socket itself since it | ||||||
|  |    must be deleted and recreated on startup.) */ | ||||||
|  | #define DEFAULT_SOCKET_PATH "/daemon-socket/socket" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| Settings settings; | Settings settings; | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -58,6 +66,7 @@ void Settings::processEnvironment() | ||||||
|     nixConfDir = canonPath(getEnv("NIX_CONF_DIR", NIX_CONF_DIR)); |     nixConfDir = canonPath(getEnv("NIX_CONF_DIR", NIX_CONF_DIR)); | ||||||
|     nixLibexecDir = canonPath(getEnv("NIX_LIBEXEC_DIR", NIX_LIBEXEC_DIR)); |     nixLibexecDir = canonPath(getEnv("NIX_LIBEXEC_DIR", NIX_LIBEXEC_DIR)); | ||||||
|     nixBinDir = canonPath(getEnv("NIX_BIN_DIR", NIX_BIN_DIR)); |     nixBinDir = canonPath(getEnv("NIX_BIN_DIR", NIX_BIN_DIR)); | ||||||
|  |     nixDaemonSocketFile = canonPath(nixStateDir + DEFAULT_SOCKET_PATH); | ||||||
| 
 | 
 | ||||||
|     string subs = getEnv("NIX_SUBSTITUTERS", "default"); |     string subs = getEnv("NIX_SUBSTITUTERS", "default"); | ||||||
|     if (subs == "default") { |     if (subs == "default") { | ||||||
|  |  | ||||||
|  | @ -50,6 +50,9 @@ struct Settings { | ||||||
|     /* The directory where the main programs are stored. */ |     /* The directory where the main programs are stored. */ | ||||||
|     Path nixBinDir; |     Path nixBinDir; | ||||||
| 
 | 
 | ||||||
|  |     /* File name of the socket the daemon listens to.  */ | ||||||
|  |     Path nixDaemonSocketFile; | ||||||
|  | 
 | ||||||
|     /* Whether to keep temporary directories of failed builds. */ |     /* Whether to keep temporary directories of failed builds. */ | ||||||
|     bool keepFailed; |     bool keepFailed; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -91,7 +91,7 @@ void RemoteStore::connectToDaemon() | ||||||
|         throw SysError("cannot create Unix domain socket"); |         throw SysError("cannot create Unix domain socket"); | ||||||
|     closeOnExec(fdSocket); |     closeOnExec(fdSocket); | ||||||
| 
 | 
 | ||||||
|     string socketPath = settings.nixStateDir + DEFAULT_SOCKET_PATH; |     string socketPath = settings.nixDaemonSocketFile; | ||||||
| 
 | 
 | ||||||
|     /* Urgh, sockaddr_un allows path names of only 108 characters.  So
 |     /* Urgh, sockaddr_un allows path names of only 108 characters.  So
 | ||||||
|        chdir to the socket directory so that we can pass a relative |        chdir to the socket directory so that we can pass a relative | ||||||
|  |  | ||||||
|  | @ -53,14 +53,6 @@ typedef enum { | ||||||
| #define STDERR_ERROR 0x63787470 | #define STDERR_ERROR 0x63787470 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| /* The default location of the daemon socket, relative to nixStateDir.
 |  | ||||||
|    The socket is in a directory to allow you to control access to the |  | ||||||
|    Nix daemon by setting the mode/ownership of the directory |  | ||||||
|    appropriately.  (This wouldn't work on the socket itself since it |  | ||||||
|    must be deleted and recreated on startup.) */ |  | ||||||
| #define DEFAULT_SOCKET_PATH "/daemon-socket/socket" |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| Path readStorePath(Source & from); | Path readStorePath(Source & from); | ||||||
| template<class T> T readStorePaths(Source & from); | template<class T> T readStorePaths(Source & from); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -774,7 +774,7 @@ static void daemonLoop() | ||||||
|         if (fdSocket == -1) |         if (fdSocket == -1) | ||||||
|             throw SysError("cannot create Unix domain socket"); |             throw SysError("cannot create Unix domain socket"); | ||||||
| 
 | 
 | ||||||
|         string socketPath = settings.nixStateDir + DEFAULT_SOCKET_PATH; |         string socketPath = settings.nixDaemonSocketFile; | ||||||
| 
 | 
 | ||||||
|         createDirs(dirOf(socketPath)); |         createDirs(dirOf(socketPath)); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue