nicm 
							
						 
					 
					
						
						
							
						
						b96ac80901 
					 
					
						
						
							
							Some unnecessary assignments and unused variables.  
						
						 
						
						
						
						
					 
					
						2020-04-09 13:52:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						34de379c7d 
					 
					
						
						
							
							Add to rather than replace flags with -c.  
						
						 
						
						
						
						
					 
					
						2020-03-30 15:49:23 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						2a5702a936 
					 
					
						
						
							
							When the server socket is given by the user with -S, create it with  
						
						 
						
						... 
						
						
						
						umask 177 instead of 117 because it may not be in a safe directory like
the default directory in /tmp. The user can chmod it more open after it
is created if they want. 
						
						
					 
					
						2020-03-12 09:26:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						44dad918f8 
					 
					
						
						
							
							Warn if a message type that is no longer used is received.  
						
						 
						
						
						
						
					 
					
						2020-01-29 16:22:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b4520aaf2c 
					 
					
						
						
							
							Need to include message size in the maximum buffer calculation.  
						
						 
						
						
						
						
					 
					
						2019-12-16 16:09:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						eaa58d28dc 
					 
					
						
						
							
							Instead of using large buffers in imsgs, add the data or path onto the end.  
						
						 
						
						
						
						
					 
					
						2019-12-16 15:48:50 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						6ce943f4d9 
					 
					
						
						
							
							Need to check in the error callback also.  
						
						 
						
						
						
						
					 
					
						2019-12-13 07:00:22 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						828001ecc5 
					 
					
						
						
							
							Do not spin waiting for exit, instead check in the write callback.  
						
						 
						
						
						
						
					 
					
						2019-12-13 06:55:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c284ebe0ad 
					 
					
						
						
							
							Rewrite the code for reading and writing files. Now, if the client is  
						
						 
						
						... 
						
						
						
						not attached, the server process asks it to open the file, similar to
how works for stdin, stdout, stderr. This makes special files like
/dev/fd/X work (used by some shells). stdin, stdout and stderr and
control mode are now just special cases of the same mechanism. This will
also make it easier to use for other commands that read files such as
source-file. 
						
						
					 
					
						2019-12-12 11:39:56 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						8f40f791d9 
					 
					
						
						
							
							Change "lost server" message to "server exited unexpectedly", from Neal  
						
						 
						
						... 
						
						
						
						McBurnett in GitHub issue 1857. 
						
						
					 
					
						2019-07-26 20:08:40 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								deraadt 
							
						 
					 
					
						
						
							
						
						4ff7bc3eb3 
					 
					
						
						
							
							When system calls indicate an error they return -1, not some arbitrary  
						
						 
						
						... 
						
						
						
						value < 0.  errno is only updated in this case.  Change all (most?)
callers of syscalls to follow this better, and let's see if this strictness
helps us in the future. 
						
						
					 
					
						2019-06-28 13:35:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						f8d3d247d8 
					 
					
						
						
							
							Merge cmd_list_parse into cmd-parse.y so it can use the new alias  
						
						 
						
						... 
						
						
						
						processing code. 
						
						
					 
					
						2019-05-25 07:18:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						3a7b9d5735 
					 
					
						
						
							
							Do not use PWD unless it actually matches the real working directory.  
						
						 
						
						
						
						
					 
					
						2018-11-22 10:36:40 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								guenther 
							
						 
					 
					
						
						
							
						
						896c1da7da 
					 
					
						
						
							
							Use <fcntl.h> instead of <sys/file.h> for open() and friends.  
						
						 
						
						... 
						
						
						
						Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.
ok deraadt@ krw@ 
						
						
					 
					
						2018-04-26 12:42:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d17c90583a 
					 
					
						
						
							
							Prefer PWD for current directory if present in client, from Wei Zhao in  
						
						 
						
						... 
						
						
						
						GitHub issue 1183. 
						
						
					 
					
						2018-01-01 11:19:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b20a00f93e 
					 
					
						
						
							
							Report better error from server when socket create fails, GitHub issue  
						
						 
						
						... 
						
						
						
						1201. 
						
						
					 
					
						2017-12-19 15:00:39 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						62144b9f57 
					 
					
						
						
							
							Do not try to put more in command message than will fit when sending  
						
						 
						
						... 
						
						
						
						(the server will treat as a fatal error). GitHub issue 1200. 
						
						
					 
					
						2017-12-18 22:13:36 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						932f6cfbfc 
					 
					
						
						
							
							Because ignore SIGCHLD early, letting signal_del restore it doesn't work  
						
						 
						
						... 
						
						
						
						correctly, so set it explicitly back to default (and the others for good
measure). 
						
						
					 
					
						2017-07-14 18:49:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						0453ad0146 
					 
					
						
						
							
							Move signal code into proc.c.  
						
						 
						
						
						
						
					 
					
						2017-07-12 09:24:17 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ed3cfaafb2 
					 
					
						
						
							
							Make shell_command a global like other stuff rather than making it an  
						
						 
						
						... 
						
						
						
						exception and using callback argument. 
						
						
					 
					
						2017-07-12 09:21:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						85338bb75f 
					 
					
						
						
							
							Add support for custom command aliases, this is an array option which  
						
						 
						
						... 
						
						
						
						contains items of the form "alias=command". This is consulted when an
unknown command is parsed. 
						
						
					 
					
						2017-01-24 19:53:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						98e7fbb2ac 
					 
					
						
						
							
							Open /dev/ptm before pledge() and save it to be used for PTMGET later  
						
						 
						
						... 
						
						
						
						(this means inlining forkpty()).
ok deraadt 
						
						
					 
					
						2017-01-23 10:09:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						46572ba904 
					 
					
						
						
							
							Print error rather than fatal() if tcgetattr() fails, which is much more  
						
						 
						
						... 
						
						
						
						useful to user. 
						
						
					 
					
						2017-01-20 14:02:33 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ef15b4195f 
					 
					
						
						
							
							Revert WIP parts of previous I didn't mean to commit yet.  
						
						 
						
						
						
						
					 
					
						2017-01-16 14:52:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						68db958477 
					 
					
						
						
							
							getopt() has a struct option so just return to using options_entry.  
						
						 
						
						
						
						
					 
					
						2017-01-16 14:49:14 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						95950bf668 
					 
					
						
						
							
							Add -E to detach-client to exec a command to replace the client instead  
						
						 
						
						... 
						
						
						
						of exiting it, useful if tmux wasn't exec'd itself. From Jenna Magius. 
						
						
					 
					
						2017-01-13 10:12:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						1b31d148c9 
					 
					
						
						
							
							Remove some dead code in cmd-move-window.c and make a load of local  
						
						 
						
						... 
						
						
						
						functions static. 
						
						
					 
					
						2016-10-03 22:52:11 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						995af0e2b7 
					 
					
						
						
							
							I no longer use my SourceForge address so replace it.  
						
						 
						
						
						
						
					 
					
						2016-01-19 15:59:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ac8678aefe 
					 
					
						
						
							
							Don't print error if none to print.  
						
						 
						
						
						
						
					 
					
						2015-11-25 07:58:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						3ff46b2e43 
					 
					
						
						
							
							Shell command from -c doesn't have to be global, pass it as an argument.  
						
						 
						
						
						
						
					 
					
						2015-11-24 23:22:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						dca93c56e0 
					 
					
						
						
							
							Do lock failures slightly better, return a special value so we don't  
						
						 
						
						... 
						
						
						
						unlink the wrong thing. 
						
						
					 
					
						2015-11-24 23:01:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						73e30cbda8 
					 
					
						
						
							
							Actually show something (even if it not that helpful) if the server  
						
						 
						
						... 
						
						
						
						fails to start (for example if it can't create the socket), rather than
hanging or showing nothing. 
						
						
					 
					
						2015-11-24 22:45:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c913fb99b6 
					 
					
						
						
							
							Tidy the code that works out the socket path, and just use the full path  
						
						 
						
						... 
						
						
						
						in the global socket_path rather than copying it. 
						
						
					 
					
						2015-11-24 22:27:22 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						bef217b241 
					 
					
						
						
							
							Switch a fprintf to a fatal, and wrap some long lines.  
						
						 
						
						
						
						
					 
					
						2015-11-24 22:04:36 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						577c0e3e5a 
					 
					
						
						
							
							Use __unused rather than rolling our own.  
						
						 
						
						
						
						
					 
					
						2015-11-18 14:27:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						a582b62287 
					 
					
						
						
							
							Accidentally turned off pledge, turn it back on.  
						
						 
						
						
						
						
					 
					
						2015-11-15 14:32:48 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c56b81a2ce 
					 
					
						
						
							
							Push stdout and stderr to clients more aggressively, and add an event to  
						
						 
						
						... 
						
						
						
						continue if the send fails. 
						
						
					 
					
						2015-11-14 09:41:06 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b0a99e85b6 
					 
					
						
						
							
							Don't shift version out of peerid, it is needed later.  
						
						 
						
						
						
						
					 
					
						2015-10-31 13:43:38 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						01defc9f49 
					 
					
						
						
							
							Because pledge(2) does not allow us to pass directory file descriptors  
						
						 
						
						... 
						
						
						
						around, we can't use file descriptors for the working directory because
we will be unable to pass it to a privileged process to tell it where to
read or write files or spawn children. So move tmux back to using
strings for the current working directory. We try to check it exists
with access() when it is set but ultimately fall back to ~ if it fails
at time of use (or / if that fails too). 
						
						
					 
					
						2015-10-31 08:13:58 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						bf9c933cae 
					 
					
						
						
							
							Like options, move the environ struct into environ.c.  
						
						 
						
						
						
						
					 
					
						2015-10-28 09:51:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						44657bf932 
					 
					
						
						
							
							Move struct options into options.c.  
						
						 
						
						
						
						
					 
					
						2015-10-27 15:58:42 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						07b0ea03c3 
					 
					
						
						
							
							Break the common process set up, event loop and imsg dispatch code  
						
						 
						
						... 
						
						
						
						between server and client out into a separate internal API. This will
make it easier to add another process. 
						
						
					 
					
						2015-10-27 13:23:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						174a2ad731 
					 
					
						
						
							
							Pass current directory as a string rather than a file descriptor because  
						
						 
						
						... 
						
						
						
						pledge doesn't let us pass directory file descriptors. 
						
						
					 
					
						2015-10-18 20:42:42 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						9c601ebde8 
					 
					
						
						
							
							Add pledge "stdio unix sendfd proc exec tty" to tmux client process,  
						
						 
						
						... 
						
						
						
						"sendfd" is dropped after first message from the server. 
						
						
					 
					
						2015-10-17 18:30:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								guenther 
							
						 
					 
					
						
						
							
						
						241fd72f75 
					 
					
						
						
							
							Userspace doesn't need to use SUN_LEN(): connect() and bind() must accept  
						
						 
						
						... 
						
						
						
						sizeof(struct sockaddr_un), so do the simple, portable thing
ok beck@ deraadt@ 
						
						
					 
					
						2015-10-11 00:26:23 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						2a62917444 
					 
					
						
						
							
							Don't leak fd and path on failure.  
						
						 
						
						
						
						
					 
					
						2015-09-24 12:06:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						67ee995cc1 
					 
					
						
						
							
							No need to keep global options around for client which doesn't use them.  
						
						 
						
						
						
						
					 
					
						2015-09-09 12:09:21 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c6e9160c67 
					 
					
						
						
							
							Login shell can be a client flag, and move the exec code into client.c.  
						
						 
						
						
						
						
					 
					
						2015-08-30 22:40:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						dd92b6e83d 
					 
					
						
						
							
							Event base does not need to be global.  
						
						 
						
						
						
						
					 
					
						2015-08-30 22:19:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4e637b1b61 
					 
					
						
						
							
							Ignore environment variables that are too long to send to the server.  
						
						 
						
						
						
						
					 
					
						2015-07-13 18:10:26 +00:00