Ray Strode
6949c46ea2
mount /proc and /dev/pts if they aren't mounted
...
turn all redirected messages to uppercase
2007-05-23 17:11:18 -04:00
Ray Strode
7724425f22
mount /dev/pts if it's not mounted yet
2007-05-23 16:08:54 -04:00
Ray Strode
8117bae564
fix typo in error message
2007-05-23 16:08:18 -04:00
Ray Strode
178fd654ab
add new functions that check if a file or dir exists
2007-05-23 15:32:06 -04:00
Ray Strode
23aad94507
add start of a program to eat a sessions output
2007-05-23 14:29:14 -04:00
Ray Strode
a707efeca4
add logger files to event-loop test program
2007-05-23 14:28:52 -04:00
Ray Strode
871d3fa991
remove erroneous space between macro name and arg list for ply_flush_log
2007-05-23 14:28:17 -04:00
Ray Strode
44d8319565
temporarily hide bug in code by removing an assert
2007-05-23 14:27:23 -04:00
Ray Strode
b489445041
don't output terminal session by default
2007-05-23 14:26:48 -04:00
Ray Strode
cfe0e7b1a5
add new ply_save_errno/ply_restore_errno functions
...
The primary mechanism for reporting problems in this program
is through errno. Since errno can get wiped out transparently
across syscalls, it's often necessary to save errno before making
a syscall and restore it afterward. These functions make that
easier.
2007-05-23 11:50:05 -04:00
Ray Strode
f7726dbc72
automatically add new lines to log messages unless explicitly
...
called _without_new_line
2007-05-23 11:27:08 -04:00
Ray Strode
c8e7fc693c
add support for default error logging
...
This commit adds a convience macros, ply_error (), that
will by default log error messages to the standard error.
This commit also adds a new api for specifying a policy
for determining when to automatically flush the log buffer.
2007-05-23 11:22:07 -04:00
Ray Strode
b3dca39089
fix up some of the convenience macros after some api churn
2007-05-23 11:02:15 -04:00
Ray Strode
d56a6b38c7
split off image libs separate from project global libs
2007-05-23 10:49:02 -04:00
Ray Strode
538870c37c
s/program/file/ in copyright block for ply-event-loop.c
2007-05-23 10:48:04 -04:00
Ray Strode
8e520e352e
add hook to get notified when the terminal session ends
2007-05-23 10:35:37 -04:00
Ray Strode
9958276959
hook up the terminal session class to the event loop
2007-05-22 16:57:52 -04:00
Ray Strode
d6ed3f15d3
remove one of the functions just added, it was broken by design
2007-05-22 16:07:10 -04:00
Ray Strode
9f06aa1a5c
add a few more api functions for reading bytes
2007-05-22 16:05:03 -04:00
Ray Strode
ba7021ecdc
remove some more bogus bool return values
2007-05-22 13:38:22 -04:00
Ray Strode
ade173a02d
add ply_logger_inject_bytes api
2007-05-22 13:02:08 -04:00
Ray Strode
61b1cbaf81
rewrite the ply_event_loop_run function to be simpler
2007-05-22 11:41:49 -04:00
Ray Strode
ed48422c16
add a new api ply_event_loop_watch_for_exit
...
This api allows the caller to register a handler to be
invoked once the event loop has been quit.
2007-05-22 11:39:45 -04:00
Ray Strode
e3c54578dd
drop some bogus failure cases in the event loop code
2007-05-22 11:21:56 -04:00
Ray Strode
f64a937df8
fix up copyright headers/assignment
2007-05-22 00:58:23 -04:00
Ray Strode
eb7a035201
first cut at an event loop
2007-05-22 00:48:00 -04:00
Ray Strode
f18c897d09
add new ply_read() function (like the ply_write() function)
2007-05-22 00:47:31 -04:00
Ray Strode
29b57941af
add new linked list implementation
2007-05-22 00:06:48 -04:00
Ray Strode
95ddbf6ab2
begin to hook up new logging interfaces to ply-terminal-session
2007-05-21 17:46:40 -04:00
Ray Strode
e2a3a0c8d2
add start of new classes for handling logging
2007-05-21 17:45:52 -04:00
Ray Strode
ce1debbfe5
add new ply_get_timestamp() function
...
This commit adds a function, ply_get_timestamp(), that returns
the current time in seconds since the epoch as a double.
2007-05-21 10:06:58 -04:00
Ray Strode
aebc4650c6
move static functions in ply-terminal-session.c to top
2007-05-21 09:51:19 -04:00
Ray Strode
d1f2ac9c60
add ply-terminal-session-test to Makefile
2007-05-21 08:10:05 -04:00
Ray Strode
e5c427bf0a
add new ply-terminal-session class
...
This commit features the first cut of a class that can run a
program and direct its console to a pseudoterminal.
2007-05-21 08:02:34 -04:00
Ray Strode
74f0ebf213
fix up string array duplicating functions to compile
...
add new function to close all open fds
2007-05-19 20:16:14 -04:00
Ray Strode
66fb7f7071
add new function to free a string array
2007-05-18 19:35:12 -04:00
Ray Strode
bb52699a66
add new api to duplicate a string array
2007-05-18 19:32:06 -04:00
Ray Strode
816c885aa1
fix the frame buffer compositing code.
...
It was always doing full screen updates instead of just the area
that changed and even that was an accident. The code was totally
broken.
2007-05-18 01:43:50 -04:00
Ray Strode
b6b0419107
make the ply-init-control test redirect messages to a
...
pseudoterminal and then echo them from the psuedoterminal
to stdout
2007-05-16 17:44:08 -04:00
Ray Strode
73ec13dacb
Make ply_fd_has_data return false on hangups
2007-05-16 17:43:20 -04:00
Ray Strode
73879cdf3c
Improve the ply-terminal api
...
Previously, the api for creating the pseudo-terminal
was ply_terminal_open (). This is a bit confusing of an api
because often a program will want to open the pseudo-terminal
after creating it, so you end up with:
ply_terminal_open (terminal);
pts_fd = open (ply_terminal_get_name (terminal), O_RDWR);
or whatever. Now it would be something like:
ply_terminal_create_device (terminal);
device_name = ply_terminal_get_device_name (terminal);
pts_fd = open (device_name, O_RDWR);
which I think is a little clearer.
2007-05-16 16:29:22 -04:00
Ray Strode
e7c3b04e4f
add ply_fd_has_data and ply_fd_can_take_data apis
...
The calls in this commit just do a one-off poll of the passed
in fd to see if the fd is read for read or write call
2007-05-16 15:50:31 -04:00
Ray Strode
088020c3c2
add "fix tests" to the TODO file
2007-05-16 15:35:51 -04:00
Ray Strode
95b8d86146
remove reference to glib-genmarshal since we don't use glib anymore
2007-05-16 15:32:40 -04:00
Ray Strode
1a45864fb1
Add a tests/ directory to keep tests in
...
Note the tests that are there now aren't really suited for
automated testing, so make check is hosed right now
2007-05-16 15:30:27 -04:00
Ray Strode
341e89438f
Make ply_terminal_get_name return a non-freeable string
...
Previously ply_terminal_get_name would return a duplicated
copy of its name that the caller would have to free.
2007-05-16 14:56:42 -04:00
Ray Strode
ce3f6f9f38
add the beginning of an api for managing ptys
2007-05-16 12:04:14 -04:00
Ray Strode
7ec3a22828
add AC_GNU_SOURCE to configure.ac
2007-05-16 12:00:59 -04:00
Ray Strode
b5714c6345
add the start of an api for controlling /bin/init
...
This lets you redirect init messages to /dev/null. Eventually,
we'll need to redirect a psuedoterminal that we log for post
boot up.
2007-05-16 11:25:50 -04:00
Ray Strode
78a8255401
Add new ply_write api
...
It wraps write(), but blocks until
all bytes are written and handles EINTR.
2007-05-16 11:21:18 -04:00