Commit Graph

116 Commits

Author SHA1 Message Date
Marc André Tanner 42962ff827 Cleanup socket directory creation code 2015-08-03 12:28:09 +02:00
Marc André Tanner 4ab9cb7fcc Fix display of status flags in session list 2015-07-30 12:20:41 +02:00
Marc André Tanner 64713a3219 Only delete stale sockets if they are sockets in the first place 2015-07-30 12:19:06 +02:00
Marc André Tanner 277f4d154d Improve detection and handling of stale sessions
With this it should be possible to create sessions for which a
dead left over socket still exists. Also the session list as
printed by abduco without any arguments will delete those stale
sockets.
2015-07-30 11:52:46 +02:00
Ross Mohn 91feaaa9f9 Fix strange behavior with abduco -A
Here are the steps:

1) Run 'abduco -A foo ping suckless.org'

2) Press 'CTRL+\' to detach

3) Run 'abduco -A foo' to reattach

4) Press 'CTRL+\' and it flashes the screen but does not detach

5) Press 'CTRL+\' a second time and it detaches this time

Here's what the output looks like:

    $ abduco -A foo ping suckless.org
    abduco: foo: detached
    $ abduco -A foo
    abduco: foo: detached
    abduco: foo: detached
    $

Also, oddly, I am only seeing this behavior on my Ubuntu Linux host, not
my AIX hosts.
2015-06-23 13:04:16 +02:00
Marc André Tanner 33a637bd2a Mention 0.4 release in README 2015-03-18 20:24:53 +01:00
Marc André Tanner 0377477f5b Set version to 0.4 2015-03-18 18:23:06 +01:00
Marc André Tanner f00e4f7a58 Reflect README renaming in Makefile 2015-03-18 17:49:28 +01:00
Marc André Tanner 159452c3c0 Change screencast url in README 2015-03-13 21:31:02 +01:00
Marc André Tanner abf647ba30 Remove old README 2015-03-13 21:26:49 +01:00
Marc André Tanner fcc5b743b2 Add new README.md 2015-03-13 21:26:22 +01:00
Marc André Tanner cefcaeb451 Update man page 2015-02-26 15:30:11 +01:00
Marc André Tanner ca60dc72f4 Improve -f handling
As an example -A -f should probably not create a new session
if the old one is still running.
2015-02-26 15:15:18 +01:00
Marc André Tanner e738f82956 Allow read only attaches to newly created sessions 2015-02-26 14:13:19 +01:00
Marc André Tanner ad1d370a48 Remove left over from -C flag 2015-02-26 14:12:47 +01:00
yy 0102cf840e Remove -C mode, in favour of a -f flag
that works with -c, -n or -A, which forces the creation of a
new session when there is an existing but already terminated
session of the same name.
2015-02-26 13:58:05 +01:00
Marc André Tanner 7962cb99f3 Cleanup socket creation 2015-02-25 23:27:44 +01:00
Marc André Tanner 2dd042f974 Fix access permissions on non-Linux systems
Create sockets in a per user directory with proper permissions
either in

 $HOME/.abduco/session-name

or if not possible in

 /tmp/abduco/$USER/session-name
2015-02-25 23:24:40 +01:00
Marc André Tanner 91b7338f9d Set socket creation permission in a portable way
fchmod(2) on a socket file descriptor is unspecified behaviour
which happens to work on Linux. Use umask(2) instead which should
affect the permissions used by bind(2).
2015-02-21 18:18:21 +01:00
Marc André Tanner af531f98ae Set version to 0.3 2015-02-19 17:49:02 +01:00
Marc André Tanner ad05af340a Change some year numbers to 2015 2015-02-19 17:46:05 +01:00
Marc André Tanner 81d934ea78 Makefile: do not append to $SRC instead set it 2015-02-19 09:42:10 +01:00
Marc André Tanner 64920e5977 Simplify maximum socket name length check 2015-02-17 22:49:14 +01:00
Marc André Tanner 98ac772a97 Set packet length to zero on error case 2015-02-17 22:49:14 +01:00
Marc André Tanner f02c3fc3c0 Fix validation creteria 2015-02-17 00:34:44 +01:00
Marc André Tanner bd3dcba548 Validate packet size before sending/receiving 2015-02-17 00:20:38 +01:00
Marc André Tanner eef3b654d9 More error handling fixes 2015-02-17 00:02:06 +01:00
Marc André Tanner e4a6b01fdc Make error handling more robust 2015-02-16 23:40:25 +01:00
Marc André Tanner d1a44a9c1a Check return value of open(2) #30720 2015-02-16 22:54:32 +01:00
Marc André Tanner bb7c859b5f Also NUL terminate string in error case #30714 2015-02-16 22:44:29 +01:00
Marc André Tanner 5c7f933dcc Fix file descriptor leakage #30724 2015-02-16 22:42:01 +01:00
Marc André Tanner 678c509f3d Revert "travis: try to run clang analyzer upon build time"
This reverts commit 4fa38bb62e.

Apparently scan-build isn't installed by default, therefore
something like the following would be needed:

 sudo add-apt-repository "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu precise main"
 sudo add-apt-repository "deb http://llvm.org/apt/precise/ llvm-toolchain-precise-${CLANG_VERSION} main"
 wget -q -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
 sudo apt-get update -qq
 sudo apt-get install -y -q clang-${CLANG_VERSION}
2015-02-16 22:13:00 +01:00
Marc André Tanner 4fa38bb62e travis: try to run clang analyzer upon build time 2015-02-15 10:30:04 +01:00
Marc André Tanner fd26003cce Cleanup config.mk, introduce $CPPFLAGS
$CPPFLAGS does only contain feature test macro defines, thus one
system which need different ones compilation should succeed with
something like:

 make CPPFLAGS= LIBS=-lc
2015-02-15 10:20:12 +01:00
Marc André Tanner 9eeb18bbfb Travis CI config 2015-02-14 10:22:28 +01:00
Marc André Tanner 8c9d2a1c46 Update testsuite to reflect terminal restoring changes 2014-12-22 13:32:42 +01:00
Marc André Tanner 76bae5939f Improve terminal restoring
Instead of simply moving the cursor to the bottom of the screen
use the alternate screen buffer i.e. the smcup/rmcup capabilities.

This is currently hardcoded to the xterm originated \e[?1047{h,l}
sequence. I also patched dvtm to support these.
2014-12-22 13:32:42 +01:00
David 16d76139db Slight formatting change 2014-12-22 13:32:42 +01:00
David 1946d8387a Added -C option
for collection of exit status and creation of new session in one go
2014-12-22 13:32:42 +01:00
Marc André Tanner 0a94807d60 Better error message in case session name is too long 2014-12-22 13:32:41 +01:00
Marc André Tanner 3cfa99a031 Decouple socket path lookup logic 2014-12-22 13:23:26 +01:00
Jason Swank d4a74a23d7 Allows abduco to compile on DragonFly BSD 2014-12-09 19:46:46 +01:00
Marc André Tanner 28ef145e40 Set version to 0.2 2014-11-15 14:54:01 +01:00
Marc André Tanner 27744da967 Add quick starting section to the README 2014-11-15 14:14:25 +01:00
Brandon Mulcahy 5ac6537927 Use more descriptive execvp error message 2014-11-10 13:48:52 +01:00
Marc André Tanner 03499b3279 Respect globally set $PREFIX 2014-10-29 21:38:11 +01:00
Marc André Tanner 2de1946f1a Use pselect instead of select
For the server case I see no such race condition.
2014-10-16 21:41:17 +02:00
Marc André Tanner eabb140a38 Use _POSIX_C_SOURCE and _XOPEN_SOURCE instead of _GNU_SOURCE 2014-10-16 21:24:51 +02:00
Marc André Tanner 5b503c838f Set _GNU_SOURCE in config.mk 2014-10-16 21:20:02 +02:00
Marc André Tanner 35117affb9 Correct function definitions without parameters 2014-10-10 20:43:06 +02:00