svn commit: r228798 - head/lib/libstand
Ed Schouten
ed at FreeBSD.org
Thu Dec 22 09:36:38 UTC 2011
Author: ed
Date: Thu Dec 22 09:36:37 2011
New Revision: 228798
URL: http://svn.freebsd.org/changeset/base/228798
Log:
Add placeholder code for prepending pathnames to tftp.
At work we have a single tftp server that provides installation data for
a variety of operating systems. I'd rather place our FreeBSD-related
files in a subdirectory, instead of the root.
It would be nice if this setting could be run-time configurable, but at
least in our specific case, this is not possible, as pxeboot is
chainloaded through pxelinux.
Sponsored by: Kumina bv
Modified:
head/lib/libstand/tftp.c
Modified: head/lib/libstand/tftp.c
==============================================================================
--- head/lib/libstand/tftp.c Thu Dec 22 08:42:07 2011 (r228797)
+++ head/lib/libstand/tftp.c Thu Dec 22 09:36:37 2011 (r228798)
@@ -292,8 +292,15 @@ tftp_makereq(struct tftp_handle *h)
wbuf.t.th_opcode = htons((u_short) RRQ);
wtail = wbuf.t.th_stuff;
l = strlen(h->path);
+#ifdef TFTP_PREPEND_PATH
+ if (l > FNAME_SIZE - (sizeof(TFTP_PREPEND_PATH) - 1))
+ return (ENAMETOOLONG);
+ bcopy(TFTP_PREPEND_PATH, wtail, sizeof(TFTP_PREPEND_PATH) - 1);
+ wtail += sizeof(TFTP_PREPEND_PATH) - 1;
+#else
if (l > FNAME_SIZE)
return (ENAMETOOLONG);
+#endif
bcopy(h->path, wtail, l + 1);
wtail += l + 1;
bcopy("octet", wtail, 6);
More information about the svn-src-head
mailing list