diff options
author | ru <ru@FreeBSD.org> | 2008-01-28 19:04:07 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2008-01-28 19:04:07 +0000 |
commit | 910410640b71f7191c0274d5d3b0e0c0c9bbbcfd (patch) | |
tree | 24ae1ec0d6cc8d44c3bb559ec2e9d089bbcaed5c /sys/ia64 | |
parent | 2a2d8bde46c97ae60e359d207227f8a1c97e6b53 (diff) | |
download | FreeBSD-src-910410640b71f7191c0274d5d3b0e0c0c9bbbcfd.zip FreeBSD-src-910410640b71f7191c0274d5d3b0e0c0c9bbbcfd.tar.gz |
Add a wrapper function that bound checks writes to the dump device.
Diffstat (limited to 'sys/ia64')
-rw-r--r-- | sys/ia64/ia64/dump_machdep.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/ia64/ia64/dump_machdep.c b/sys/ia64/ia64/dump_machdep.c index 26ce910..bc84c49 100644 --- a/sys/ia64/ia64/dump_machdep.c +++ b/sys/ia64/ia64/dump_machdep.c @@ -95,7 +95,7 @@ buf_write(struct dumperinfo *di, char *ptr, size_t sz) ptr += len; sz -= len; if (fragsz == DEV_BSIZE) { - error = di->dumper(di->priv, buffer, 0, dumplo, + error = dump_write(di, buffer, 0, dumplo, DEV_BSIZE); if (error) return error; @@ -115,7 +115,7 @@ buf_flush(struct dumperinfo *di) if (fragsz == 0) return (0); - error = di->dumper(di->priv, buffer, 0, dumplo, DEV_BSIZE); + error = dump_write(di, buffer, 0, dumplo, DEV_BSIZE); dumplo += DEV_BSIZE; fragsz = 0; return (error); @@ -146,7 +146,7 @@ cb_dumpdata(struct efi_md *mdp, int seqnr, void *arg) printf("%c\b", "|/-\\"[twiddle++ & 3]); counter &= (1<<24) - 1; } - error = di->dumper(di->priv, (void*)pa, 0, dumplo, sz); + error = dump_write(di, (void*)pa, 0, dumplo, sz); if (error) break; dumplo += sz; @@ -266,7 +266,7 @@ dumpsys(struct dumperinfo *di) ehdr.e_phnum); /* Dump leader */ - error = di->dumper(di->priv, &kdh, 0, dumplo, sizeof(kdh)); + error = dump_write(di, &kdh, 0, dumplo, sizeof(kdh)); if (error) goto fail; dumplo += sizeof(kdh); @@ -297,12 +297,12 @@ dumpsys(struct dumperinfo *di) goto fail; /* Dump trailer */ - error = di->dumper(di->priv, &kdh, 0, dumplo, sizeof(kdh)); + error = dump_write(di, &kdh, 0, dumplo, sizeof(kdh)); if (error) goto fail; /* Signal completion, signoff and exit stage left. */ - di->dumper(di->priv, NULL, 0, 0, 0); + dump_write(di, NULL, 0, 0, 0); printf("\nDump complete\n"); return; |