aboutsummaryrefslogtreecommitdiffstats
path: root/src/symsocket.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/symsocket.c')
-rw-r--r--src/symsocket.c104
1 files changed, 56 insertions, 48 deletions
diff --git a/src/symsocket.c b/src/symsocket.c
index 653cd35..db90475 100644
--- a/src/symsocket.c
+++ b/src/symsocket.c
@@ -11,6 +11,9 @@ static char rcsid[] =
/*
* $Log$
+ * Revision 1.14 2012/06/22 10:22:25 james
+ * *** empty log message ***
+ *
* Revision 1.13 2008/03/07 14:13:40 james
* *** empty log message ***
*
@@ -101,10 +104,11 @@ socket_free (Socket * s)
slide_free (s->read_buf);
if (s->write_buf)
slide_free (s->write_buf);
- if (s->path_to_unlink) {
- unlink (s->path_to_unlink);
- free (s->path_to_unlink);
- }
+ if (s->path_to_unlink)
+ {
+ unlink (s->path_to_unlink);
+ free (s->path_to_unlink);
+ }
close (s->fd);
free (s);
}
@@ -149,18 +153,20 @@ socket_listen (char *path)
sun->sun_family = AF_UNIX;
strcpy (sun->sun_path, path);
- if (bind (fd, (struct sockaddr *) sun, SUN_LEN (sun)) < 0) {
- free (sun);
- close (fd);
- return NULL;
- }
+ if (bind (fd, (struct sockaddr *) sun, SUN_LEN (sun)) < 0)
+ {
+ free (sun);
+ close (fd);
+ return NULL;
+ }
free (sun);
- if (listen (fd, 5) < 0) {
- close (fd);
- return NULL;
- }
+ if (listen (fd, 5) < 0)
+ {
+ close (fd);
+ return NULL;
+ }
set_nonblocking (fd);
@@ -180,7 +186,7 @@ Socket *
socket_accept (Socket * l)
{
Socket *ret;
- int len;
+ socklen_t len;
int fd;
struct sockaddr_un sun;
@@ -228,11 +234,12 @@ socket_connect (char *path)
sun->sun_family = AF_UNIX;
strcpy (sun->sun_path, path);
- if (connect (fd, (struct sockaddr *) sun, SUN_LEN (sun))) {
- free (sun);
- close (fd);
- return NULL;
- }
+ if (connect (fd, (struct sockaddr *) sun, SUN_LEN (sun)))
+ {
+ free (sun);
+ close (fd);
+ return NULL;
+ }
free (sun);
@@ -252,7 +259,6 @@ socket_connect (char *path)
void
socket_consume_msg (Socket * s)
{
- int n;
if (!s->msg)
return;
@@ -265,14 +271,13 @@ socket_consume_msg (Socket * s)
void
socket_pre_select (Socket * s, fd_set * rfds, fd_set * wfds)
{
- char buf[1024];
- int n;
/* Server socket */
- if (SOCKET_IS_LISTENER (s)) {
- FD_SET (s->fd, rfds);
- return;
- }
+ if (SOCKET_IS_LISTENER (s))
+ {
+ FD_SET (s->fd, rfds);
+ return;
+ }
if (!SLIDE_EMPTY (s->write_buf))
FD_SET (s->fd, wfds);
@@ -285,32 +290,33 @@ socket_pre_select (Socket * s, fd_set * rfds, fd_set * wfds)
int
socket_post_select (Socket * s, fd_set * rfds, fd_set * wfds)
{
- char buf[1024];
int n;
int error = 0;
- if ((!SLIDE_EMPTY (s->write_buf)) && FD_ISSET (s->fd, wfds)) {
- n =
- (SLIDE_BYTES (s->write_buf) >
- MAX_TXN) ? MAX_TXN : SLIDE_BYTES (s->write_buf);
- n = wrap_send (s->fd, SLIDE_RPTR (s->write_buf), n);
- if (n > 0)
- slide_consume (s->write_buf, n);
- if (n < 0)
- error = -1;
- }
-
- if (!SLIDE_FULL (s->read_buf) && FD_ISSET (s->fd, rfds)) {
- n =
- (SLIDE_SPACE (s->read_buf) >
- MAX_TXN) ? MAX_TXN : SLIDE_SPACE (s->read_buf);
- n = wrap_recv (s->fd, SLIDE_WPTR (s->read_buf), n);
- if (n > 0)
- slide_added (s->read_buf, n);
- if (n < 0)
- error = -1;
- }
+ if ((!SLIDE_EMPTY (s->write_buf)) && FD_ISSET (s->fd, wfds))
+ {
+ n =
+ (SLIDE_BYTES (s->write_buf) >
+ MAX_TXN) ? MAX_TXN : SLIDE_BYTES (s->write_buf);
+ n = wrap_send (s->fd, SLIDE_RPTR (s->write_buf), n);
+ if (n > 0)
+ slide_consume (s->write_buf, n);
+ if (n < 0)
+ error = -1;
+ }
+
+ if (!SLIDE_FULL (s->read_buf) && FD_ISSET (s->fd, rfds))
+ {
+ n =
+ (SLIDE_SPACE (s->read_buf) >
+ MAX_TXN) ? MAX_TXN : SLIDE_SPACE (s->read_buf);
+ n = wrap_recv (s->fd, SLIDE_WPTR (s->read_buf), n);
+ if (n > 0)
+ slide_added (s->read_buf, n);
+ if (n < 0)
+ error = -1;
+ }
s->msg = ipc_check_for_message_in_slide (s->read_buf);
@@ -332,9 +338,11 @@ socket_write (Socket * s, void *buf, int len)
(SLIDE_BYTES (s->write_buf) >
MAX_TXN) ? MAX_TXN : SLIDE_BYTES (s->write_buf);
n = wrap_send (s->fd, SLIDE_RPTR (s->write_buf), n);
+#if 0
{
uint8_t *c = SLIDE_RPTR (s->write_buf);
}
+#endif
if (n > 0)
slide_consume (s->write_buf, n);