@node Bundles
+@cindex bundles
+@cindex tapes
+@cindex streaming media
@unnumbered Bundles
-Usual @ref{nncp-xfer} command requires filesystem it can operate on.
-That presumes random access media storage usage, like hard drives, USB
-flash drives and similar. But media like CD-ROM and especially tape
-drives are sequential by nature. You can prepare intermediate directory
-for recording to CD-ROM disc/tape, but that requires additional storage
-and is inconvenient.
+Usual @command{@ref{nncp-xfer}} command requires filesystem it can
+operate on. That presumes random access media storage usage, like hard
+drives, USB flash drives and similar. But media like CD-ROM and
+especially tape drives are sequential by nature. You can prepare
+intermediate directory for recording to CD-ROM disc/tape, but that
+requires additional storage and is inconvenient.
-Bundles, created with @ref{nncp-bundle} command are convenient
-alternative to ordinary @command{nncp-xfer}. Bundle is just a collection
-of @ref{Encrypted, encrypted packets}, stream of packets. It could be
-sequentially streamed for recording and digested back.
+Bundles, created with @command{@ref{nncp-bundle}} command are convenient
+alternative to ordinary @command{@ref{nncp-xfer}}. Bundle is just a
+collection of @ref{Encrypted, encrypted packets}, stream of packets. It
+could be sequentially streamed for recording and digested back.
@itemize
@item They do not require intermediate storage before recording on
either CD-ROM or tape drive.
-@verbatim
-% nncp-bundle -tx SOMENODE | cdrecord -tao - # record directly to CD
-% nncp-bundle -tx SOMENODE | dd of=/dev/sa0 bs=512 # record directly to tape
+@example
+$ nncp-bundle -tx SOMENODE | cdrecord -tao - # record directly to CD
+$ nncp-bundle -tx SOMENODE | dd of=/dev/sa0 bs=10240 # record directly to tape
-% dd if=/dev/cd0 bs=2048 | nncp-bundle -rx # read directly from CD
-% dd if=/dev/sa0 bs=512 | nncp-bundle -rx # read directly from tape
-@end verbatim
+$ dd if=/dev/cd0 bs=2048 | nncp-bundle -rx # read directly from CD
+$ dd if=/dev/sa0 bs=10240 | nncp-bundle -rx # read directly from tape
+@end example
@item They do not require filesystem existence to deal with, simplifying
administration when operating in heterogeneous systems with varying
filesystems. No @command{mount}/@command{umount}, @command{zpool
import}/@command{zpool export} and struggling with file permissions.
-@verbatim
-% nncp-bundle -tx SOMENODE | dd of=/dev/da0 bs=1M # record directly to
+@example
+$ nncp-bundle -tx SOMENODE | dd of=/dev/da0 bs=1M # record directly to
# hard/flash drive
-% dd if=/dev/da0 bs=1M | nncp-bundle -rx # read directly from drive
-@end verbatim
+$ dd if=/dev/da0 bs=1M | nncp-bundle -rx # read directly from drive
+@end example
@item This is the fastest way to record outbound packets for offline
transmission -- sequential write is always faster, when no
@end itemize
-Technically bundle is valid POSIX.1
-@url{http://www.freebsd.org/cgi/man.cgi?query=tar&sektion=5, tar archive},
+@pindex pax
+@pindex tar
+Technically bundle is valid POSIX.1-2001
+@url{https://pubs.opengroup.org/onlinepubs/9699919799/utilities/pax.html#tag_20_92_13_01, pax archive}
with directory/files hierarchy identical to that is used in
-@ref{nncp-xfer}: @file{NNCP/RECIPIENT/SENDER/PACKET}. So bundle can also
-be created by manual tar-ing of @command{nncp-xfer} resulting directory.
+@command{@ref{nncp-xfer}}: @file{NNCP/RECIPIENT/SENDER/PACKET}.
+So bundle can also be created by manual tar-ing of
+@command{@ref{nncp-xfer}} resulting directory.