Browse Source

Plan 9 from Bell Labs 2011-02-26

David du Colombier 13 years ago
parent
commit
73e30f2e39
5 changed files with 29 additions and 25 deletions
  1. 6 6
      sys/src/9/ip/devip.c
  2. 3 3
      sys/src/9/omap/devuart.c
  3. 4 4
      sys/src/9/pc/devlpt.c
  4. 15 11
      sys/src/9/port/devpnp.c
  5. 1 1
      sys/src/9/port/netif.c

+ 6 - 6
sys/src/9/ip/devip.c

@@ -183,7 +183,7 @@ ipgen(Chan *c, char*, Dirtab*, int, int s, Dir *dp)
 	case Qtopdir:
 		if(s == DEVDOTDOT){
 			mkqid(&q, QID(0, 0, Qtopdir), 0, QTDIR);
-			sprint(up->genbuf, "#I%lud", c->dev);
+			snprint(up->genbuf, sizeof up->genbuf, "#I%lud", c->dev);
 			devdir(c, q, up->genbuf, 0, network, 0555, dp);
 			return 1;
 		}
@@ -206,13 +206,13 @@ ipgen(Chan *c, char*, Dirtab*, int, int s, Dir *dp)
 	case Qprotodir:
 		if(s == DEVDOTDOT){
 			mkqid(&q, QID(0, 0, Qtopdir), 0, QTDIR);
-			sprint(up->genbuf, "#I%lud", c->dev);
+			snprint(up->genbuf, sizeof up->genbuf, "#I%lud", c->dev);
 			devdir(c, q, up->genbuf, 0, network, 0555, dp);
 			return 1;
 		}
 		if(s < f->p[PROTO(c->qid)]->ac) {
 			cv = f->p[PROTO(c->qid)]->conv[s];
-			sprint(up->genbuf, "%d", s);
+			snprint(up->genbuf, sizeof up->genbuf, "%d", s);
 			mkqid(&q, QID(PROTO(c->qid), s, Qconvdir), 0, QTDIR);
 			devdir(c, q, up->genbuf, 0, cv->owner, 0555, dp);
 			return 1;
@@ -649,7 +649,7 @@ ipread(Chan *ch, void *a, long n, vlong off)
 		return netlogread(f, a, offset, n);
 	case Qctl:
 		buf = smalloc(16);
-		sprint(buf, "%lud", CONV(ch->qid));
+		snprint(buf, 16, "%lud", CONV(ch->qid));
 		rv = readstr(offset, p, n, buf);
 		free(buf);
 		return rv;
@@ -658,7 +658,7 @@ ipread(Chan *ch, void *a, long n, vlong off)
 		x = f->p[PROTO(ch->qid)];
 		c = x->conv[CONV(ch->qid)];
 		if(x->remote == nil) {
-			sprint(buf, "%I!%d\n", c->raddr, c->rport);
+			snprint(buf, Statelen, "%I!%d\n", c->raddr, c->rport);
 		} else {
 			(*x->remote)(c, buf, Statelen-2);
 		}
@@ -670,7 +670,7 @@ ipread(Chan *ch, void *a, long n, vlong off)
 		x = f->p[PROTO(ch->qid)];
 		c = x->conv[CONV(ch->qid)];
 		if(x->local == nil) {
-			sprint(buf, "%I!%d\n", c->laddr, c->lport);
+			snprint(buf, Statelen, "%I!%d\n", c->laddr, c->lport);
 		} else {
 			(*x->local)(c, buf, Statelen-2);
 		}

+ 3 - 3
sys/src/9/omap/devuart.c

@@ -208,15 +208,15 @@ uartreset(void)
 	p = uartlist;
 	for(i = 0; i < uartnuart; i++){
 		/* 3 directory entries per port */
-		sprint(dp->name, "eia%d", i);
+		snprint(dp->name, sizeof dp->name, "eia%d", i);
 		dp->qid.path = NETQID(i, Ndataqid);
 		dp->perm = 0660;
 		dp++;
-		sprint(dp->name, "eia%dctl", i);
+		snprint(dp->name, sizeof dp->name, "eia%dctl", i);
 		dp->qid.path = NETQID(i, Nctlqid);
 		dp->perm = 0660;
 		dp++;
-		sprint(dp->name, "eia%dstatus", i);
+		snprint(dp->name, sizeof dp->name, "eia%dstatus", i);
 		dp->qid.path = NETQID(i, Nstatqid);
 		dp->perm = 0444;
 		dp++;

+ 4 - 4
sys/src/9/pc/devlpt.c

@@ -74,7 +74,7 @@ lptgen(Chan *c, char*, Dirtab *tab, int ntab, int i, Dir *dp)
 	if(qid.path < Qdata)
 		qid.path += lptbase[c->dev];
 	qid.vers = c->dev;
-	sprint(up->genbuf, "lpt%lud%s", c->dev+1, tab->name);
+	snprint(up->genbuf, sizeof up->genbuf, "lpt%lud%s", c->dev+1, tab->name);
 	devdir(c, qid, up->genbuf, tab->length, eve, tab->perm, dp);
 	return 1;
 }
@@ -84,7 +84,7 @@ lptattach(char *spec)
 {
 	Chan *c;
 	int i  = (spec && *spec) ? strtol(spec, 0, 0) : 1;
-	char name[5];
+	char name[8];
 	static int set;
 
 	if(!set){
@@ -96,7 +96,7 @@ lptattach(char *spec)
 		error(Ebadarg);
 	if(lptallocd[i-1] == 0){
 		int ecr;
-		sprint(name, "lpt%d", i-1);
+		snprint(name, sizeof name, "lpt%d", i-1);
 		if(ioalloc(lptbase[i-1], 3, 0, name) < 0)
 			error("lpt port space in use");
 		lptallocd[i-1] = 1;
@@ -149,7 +149,7 @@ lptread(Chan *c, void *a, long n, vlong)
 
 	if(c->qid.path == Qdir)
 		return devdirread(c, a, n, lptdir, nelem(lptdir), lptgen);
-	size = sprint(str, "0x%2.2ux\n", inb(c->qid.path));
+	size = snprint(str, sizeof str, "0x%2.2ux\n", inb(c->qid.path));
 	o = c->offset;
 	if(o >= size)
 		return 0;

+ 15 - 11
sys/src/9/port/devpnp.c

@@ -305,7 +305,7 @@ pnpreset(void)
 	if(isa.port < 0x203 || isa.port > 0x3ff)
 		return;
 	for(csn = 1; csn < 256; csn++) {
-		sprint(buf, "pnp%d", csn);
+		snprint(buf, sizeof buf, "pnp%d", csn);
 		s = getconf(buf);
 		if(s == 0)
 			continue;
@@ -342,12 +342,12 @@ csngen(Chan *c, int t, int csn, Card *cp, Dir *dp)
 	switch(t) {
 	case Qcsnctl:
 		q = (Qid){QID(csn, Qcsnctl), 0, 0};
-		sprint(up->genbuf, "csn%dctl", csn);
+		snprint(up->genbuf, sizeof up->genbuf, "csn%dctl", csn);
 		devdir(c, q, up->genbuf, 0, eve, 0664, dp);
 		return 1;
 	case Qcsnraw:
 		q = (Qid){QID(csn, Qcsnraw), 0, 0};
-		sprint(up->genbuf, "csn%draw", csn);
+		snprint(up->genbuf, sizeof up->genbuf, "csn%draw", csn);
 		devdir(c, q, up->genbuf, cp->ncfg, eve, 0444, dp);
 		return 1;
 	}
@@ -362,11 +362,13 @@ pcigen(Chan *c, int t, int tbdf, Dir *dp)
 	q = (Qid){BUSBDF(tbdf)|t, 0, 0};
 	switch(t) {
 	case Qpcictl:
-		sprint(up->genbuf, "%d.%d.%dctl", BUSBNO(tbdf), BUSDNO(tbdf), BUSFNO(tbdf));
+		snprint(up->genbuf, sizeof up->genbuf, "%d.%d.%dctl",
+			BUSBNO(tbdf), BUSDNO(tbdf), BUSFNO(tbdf));
 		devdir(c, q, up->genbuf, 0, eve, 0444, dp);
 		return 1;
 	case Qpciraw:
-		sprint(up->genbuf, "%d.%d.%draw", BUSBNO(tbdf), BUSDNO(tbdf), BUSFNO(tbdf));
+		snprint(up->genbuf, sizeof up->genbuf, "%d.%d.%draw",
+			BUSBNO(tbdf), BUSDNO(tbdf), BUSFNO(tbdf));
 		devdir(c, q, up->genbuf, 128, eve, 0660, dp);
 		return 1;
 	}
@@ -385,7 +387,7 @@ pnpgen(Chan *c, char *, Dirtab*, int, int s, Dir *dp)
 	case Qtopdir:
 		if(s == DEVDOTDOT){
 			q = (Qid){QID(0, Qtopdir), 0, QTDIR};
-			sprint(up->genbuf, "#%C", pnpdevtab.dc);
+			snprint(up->genbuf, sizeof up->genbuf, "#%C", pnpdevtab.dc);
 			devdir(c, q, up->genbuf, 0, eve, 0555, dp);
 			return 1;
 		}
@@ -393,7 +395,7 @@ pnpgen(Chan *c, char *, Dirtab*, int, int s, Dir *dp)
 	case Qpnpdir:
 		if(s == DEVDOTDOT){
 			q = (Qid){QID(0, Qtopdir), 0, QTDIR};
-			sprint(up->genbuf, "#%C", pnpdevtab.dc);
+			snprint(up->genbuf, sizeof up->genbuf, "#%C", pnpdevtab.dc);
 			devdir(c, q, up->genbuf, 0, eve, 0555, dp);
 			return 1;
 		}
@@ -422,7 +424,7 @@ pnpgen(Chan *c, char *, Dirtab*, int, int s, Dir *dp)
 	case Qpcidir:
 		if(s == DEVDOTDOT){
 			q = (Qid){QID(0, Qtopdir), 0, QTDIR};
-			sprint(up->genbuf, "#%C", pnpdevtab.dc);
+			snprint(up->genbuf, sizeof up->genbuf, "#%C", pnpdevtab.dc);
 			devdir(c, q, up->genbuf, 0, eve, 0555, dp);
 			return 1;
 		}
@@ -498,9 +500,10 @@ pnpread(Chan *c, void *va, long n, vlong offset)
 		return devdirread(c, a, n, (Dirtab *)0, 0L, pnpgen);
 	case Qpnpctl:
 		if(pnp.rddata > 0)
-			sprint(up->genbuf, "enabled %#x\n", pnp.rddata);
+			snprint(up->genbuf, sizeof up->genbuf, "enabled %#x\n",
+				pnp.rddata);
 		else
-			sprint(up->genbuf, "disabled\n");
+			snprint(up->genbuf, sizeof up->genbuf, "disabled\n");
 		return readstr(offset, a, n, up->genbuf);
 	case Qcsnraw:
 		csn = CSN(c->qid);
@@ -525,7 +528,8 @@ pnpread(Chan *c, void *va, long n, vlong offset)
 		cp = findcsn(csn, 0, 1);
 		if(cp == nil)
 			error(Egreg);
-		sprint(up->genbuf, "%s\n", serial(cp->id1, cp->id2));
+		snprint(up->genbuf, sizeof up->genbuf, "%s\n",
+			serial(cp->id1, cp->id2));
 		return readstr(offset, a, n, up->genbuf);
 	case Qpcictl:
 		tbdf = MKBUS(BusPCI, 0, 0, 0)|BUSBDF((ulong)c->qid.path);

+ 1 - 1
sys/src/9/port/netif.c

@@ -97,7 +97,7 @@ netifgen(Chan *c, char*, Dirtab *vp, int, int i, Dir *dp)
 				return 0;
 			q.type = QTDIR;
 			q.path = NETQID(i, N3rdqid);
-			sprint(up->genbuf, "%d", i);
+			snprint(up->genbuf, sizeof up->genbuf, "%d", i);
 			devdir(c, q, up->genbuf, 0, eve, DMDIR|0555, dp);
 			break;
 		}