summaryrefslogtreecommitdiff
path: root/sys/src/cmd/upas
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-08-30 17:39:22 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-08-30 17:39:22 +0200
commita7ed529d97c42300881af7fd5b4095a6061cd5f3 (patch)
tree3866cf65103f11347c7bddc3770305dbf95b22c1 /sys/src/cmd/upas
parentc430bf65d3c9a6e80d93bf4ece4430cdd6c2d7fa (diff)
upas/fs: catch alarm note (used in pop3 code)
Diffstat (limited to 'sys/src/cmd/upas')
-rw-r--r--sys/src/cmd/upas/fs/fs.c5
-rw-r--r--sys/src/cmd/upas/fs/pop3.c6
2 files changed, 5 insertions, 6 deletions
diff --git a/sys/src/cmd/upas/fs/fs.c b/sys/src/cmd/upas/fs/fs.c
index 5874b9474..b07c793ed 100644
--- a/sys/src/cmd/upas/fs/fs.c
+++ b/sys/src/cmd/upas/fs/fs.c
@@ -145,10 +145,9 @@ usage(void)
}
void
-notifyf(void *a, char *s)
+notifyf(void *, char *s)
{
- USED(a);
- if(strncmp(s, "interrupt", 9) == 0)
+ if(strstr(s, "alarm") || strstr(s, "interrupt"))
noted(NCONT);
noted(NDFLT);
}
diff --git a/sys/src/cmd/upas/fs/pop3.c b/sys/src/cmd/upas/fs/pop3.c
index 1912647df..bd51a1a2f 100644
--- a/sys/src/cmd/upas/fs/pop3.c
+++ b/sys/src/cmd/upas/fs/pop3.c
@@ -83,13 +83,13 @@ pop3resp(Pop *pop)
char *p;
alarm(60*1000);
- if((s = Brdstr(&pop->bin, '\n', 0)) == nil){
+ s = Brdstr(&pop->bin, '\n', 0);
+ alarm(0);
+ if(s == nil){
close(pop->fd);
pop->fd = -1;
- alarm(0);
return "unexpected eof";
}
- alarm(0);
p = s+strlen(s)-1;
while(p >= s && (*p == '\r' || *p == '\n'))