wmii

git clone git://oldgit.suckless.org/wmii/
Log | Files | Refs | README | LICENSE

commit 0ca97a565d5876e38b5ab72199eccf9448321dd9
parent 319642b201f0fd5ebbc4dfb32bd5a83fd79514f8
Author: Anselm R. Garbe <garbeam@wmii.de>
Date:   Thu,  9 Feb 2006 18:32:01 +0100

made error reporting in wmiifs and libixp better, change keys script somewhat


Diffstat:
cmd/wm/fs.c | 16++++++++--------
cmd/wmiifs.c | 4++--
libixp/client.c | 4++--
libixp/ixp.h | 4++--
libixp/message.c | 4++--
libixp/server.c | 6+++---
libixp/transport.c | 6+++---
rc/keys | 2+-
8 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/cmd/wm/fs.c b/cmd/wm/fs.c @@ -23,14 +23,14 @@ /* * filesystem specification * / Droot - * /default/ Ddefault - * /default/font Ffont <xlib font name> - * /default/selcolor Fselcolor <#RRGGBB> <#RRGGBB> <#RRGGBB> - * /default/normcolor Fnormcolor <#RRGGBB> <#RRGGBB> <#RRGGBB> - * /default/border Fborder 0..n - * /default/bar Fbar 0, 1 - * /default/snap Fsnap 0..n - * /default/inc Finc 0..n + * /def/ Ddef + * /def/font Ffont <xlib font name> + * /def/selcolor Fselcolor <#RRGGBB> <#RRGGBB> <#RRGGBB> + * /def/normcolor Fnormcolor <#RRGGBB> <#RRGGBB> <#RRGGBB> + * /def/border Fborder 0..n + * /def/bar Fbar 0, 1 + * /def/snap Fsnap 0..n + * /def/inc Finc 0..n * /event Fevent * /ctl Fctl command interface (root) * /new/ Dpage returns new page diff --git a/cmd/wmiifs.c b/cmd/wmiifs.c @@ -362,7 +362,7 @@ mntrequest(Bind *b, Fcall *tx) /*fprintf(stderr, "mntrequest: welcome, tx=%x tx->id=%d fid=%d\n", b->tx, tx->id, tx->fid);*/ memcpy(&b->client.fcall, tx, sizeof(Fcall)); memcpy(&b->fcall, tx, sizeof(Fcall)); - msize = ixp_fcall_to_msg(&b->client.fcall, msg, IXP_MAX_MSG); + msize = ixp_fcall_to_msg(msg, &b->client.fcall, IXP_MAX_MSG); b->client.errstr = 0; if(ixp_send_message(b->client.fd, msg, msize, &b->client.errstr) != msize) { xunbind(b); @@ -403,7 +403,7 @@ xwalk(IXPConn *c, Fcall *fcall) cext_strlcpy(b->client.fcall.wname[i - 1], fcall->wname[i], sizeof(b->client.fcall.wname[i - 1])); - i = ixp_fcall_to_msg(&b->client.fcall, msg, IXP_MAX_MSG); + i = ixp_fcall_to_msg(msg, &b->client.fcall, IXP_MAX_MSG); b->client.errstr = 0; if(ixp_send_message(b->client.fd, msg, i, &b->client.errstr) != i) { xunbind(b); diff --git a/libixp/client.c b/libixp/client.c @@ -18,13 +18,13 @@ int ixp_client_do_fcall(IXPClient * c) { static unsigned char msg[IXP_MAX_MSG]; - unsigned int msize = ixp_fcall_to_msg(&c->fcall, msg, IXP_MAX_MSG); + unsigned int msize = ixp_fcall_to_msg(msg, &c->fcall, IXP_MAX_MSG); c->errstr = 0; if(ixp_send_message(c->fd, msg, msize, &c->errstr) != msize) return -1; if(!ixp_recv_message(c->fd, msg, IXP_MAX_MSG, &c->errstr)) return -1; - if(!(msize = ixp_msg_to_fcall(msg, IXP_MAX_MSG, &c->fcall))) { + if(!(msize = ixp_msg_to_fcall(&c->fcall, msg, IXP_MAX_MSG))) { c->errstr = "received bad message"; return -1; } diff --git a/libixp/ixp.h b/libixp/ixp.h @@ -275,8 +275,8 @@ void *ixp_dec_stat(unsigned char *msg, Stat *stat); /* message.c */ unsigned short ixp_sizeof_stat(Stat *stat); -unsigned int ixp_fcall_to_msg(Fcall *fcall, void *msg, unsigned int msglen); -unsigned int ixp_msg_to_fcall(void *msg, unsigned int msglen, Fcall *fcall); +unsigned int ixp_fcall_to_msg(void *msg, Fcall *fcall, unsigned int msglen); +unsigned int ixp_msg_to_fcall(Fcall *call, void *msg, unsigned int msglen); /* server.c */ IXPConn *ixp_server_open_conn(IXPServer *s, int fd, diff --git a/libixp/message.c b/libixp/message.c @@ -31,7 +31,7 @@ ixp_sizeof_stat(Stat * stat) } unsigned int -ixp_fcall_to_msg(Fcall * fcall, void *msg, unsigned int msglen) +ixp_fcall_to_msg(void *msg, Fcall *fcall, unsigned int msglen) { unsigned int i, msize = sizeof(unsigned char) + sizeof(unsigned short) + @@ -210,7 +210,7 @@ ixp_fcall_to_msg(Fcall * fcall, void *msg, unsigned int msglen) } unsigned int -ixp_msg_to_fcall(void *msg, unsigned int msglen, Fcall * fcall) +ixp_msg_to_fcall(Fcall *fcall, void *msg, unsigned int msglen) { unsigned int i, msize; unsigned short len; diff --git a/libixp/server.c b/libixp/server.c @@ -142,14 +142,14 @@ ixp_server_receive_fcall(IXPConn *c, Fcall *fcall) c->close(c); return 0; } - return ixp_msg_to_fcall(msg, IXP_MAX_MSG, fcall); + return ixp_msg_to_fcall(fcall, msg, IXP_MAX_MSG); } int ixp_server_respond_fcall(IXPConn *c, Fcall *fcall) { char *errstr; - unsigned int msize = ixp_fcall_to_msg(fcall, msg, IXP_MAX_MSG); + unsigned int msize = ixp_fcall_to_msg(msg, fcall, IXP_MAX_MSG); if(ixp_send_message(c->fd, msg, msize, &errstr) != msize) { if(c->close) c->close(c); @@ -164,7 +164,7 @@ ixp_server_respond_error(IXPConn *c, Fcall *fcall, char *errstr) unsigned int msize; fcall->id = RERROR; cext_strlcpy(fcall->errstr, errstr, sizeof(fcall->errstr)); - msize = ixp_fcall_to_msg(fcall, msg, IXP_MAX_MSG); + msize = ixp_fcall_to_msg(msg, fcall, IXP_MAX_MSG); if(ixp_send_message(c->fd, msg, msize, &errstr) != msize) { if(c->close) c->close(c); diff --git a/libixp/transport.c b/libixp/transport.c @@ -29,7 +29,7 @@ ixp_send_message(int fd, void *msg, unsigned int msize, char **errstr) if(r == -1 && errno == EINTR) continue; if(r < 1) { - *errstr = "cannot send message"; + *errstr = "broken pipe"; return 0; } num += r; @@ -49,7 +49,7 @@ ixp_recv_data(int fd, void *msg, unsigned int msize, char **errstr) if(r == -1 && errno == EINTR) continue; if(r < 1) { - *errstr = "cannot receive data"; + *errstr = "broken pipe"; return 0; } num += r; @@ -68,7 +68,7 @@ ixp_recv_message(int fd, void *msg, unsigned int msglen, char **errstr) return 0; ixp_dec_u32(msg, &msize); if(msize > msglen) { - *errstr = "message size exceeds buffer size"; + *errstr = "invalid message header"; return 0; } /* receive message */ diff --git a/rc/keys b/rc/keys @@ -1,4 +1,4 @@ -#!9PREFIX/bin/rc -x +#!9PREFIX/bin/rc # configure wmiikeys fn xwrite { echo -n $2 | wmiir write $1 }