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);
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to