Choosing the transfer method for a DCC file send
Normally Snak will automatically do the right thing, but there are cases where
you may want to know about this subject.
In the DCC send dialog you will see a popup where you can select either MacBinary
or Binary. Normally you should not make a selection as Snak has already considered
what the best choice is. This section attempts to explain what the difference
The correct transfer method depends on the kind of file and on the receiving
computer. If you are unsure what to do chose the Binary transfer method. It's
the correct choice in most cases. Read on for a more in-depth description of
the issue but don't worry if you don't understand all of it.
MacBinary is only supported on Macintosh IRC clients, so if the receiver is using
a PC, the Binary transfer method should be used. To send files to someone on another
Mac, the MacBinary format should be used if the files are not compressed or are known to contain resources. The safest bet is to use StuffIt to compress the files so that the resources are safely encapsulated, and use the Binary method.
MacBinary is a standard for preserving the specifics of Macintosh files when transmitted.
On a PC a file is just a stream of bytes with no additional information. However,
a Mac needs additional information in order to correctly display the file icon
and launch the correct application when a user double clicks the file.
To do this, a Macintosh file is usually in two parts - a data fork which corresponds
to a PC file, and a resource fork which has no PC counterpart. This is entirely
transparent to a user when working on a Mac, but it becomes an issue when moving
files back and forth between different environments.
The MacBinary standard defines how the filetype information, the data fork and
the resource fork is packed together, so if the receiver is on a Macintosh, the
MacBinary format should be used.
If the Binary transfer method is chosen instead it's not possible to correctly
transfer certain types of files like applications, because only the data fork
will be sent. If the files are raw data - like .jpg pictures, the Binary method
is fine because such files typically do not contain a resources.
If you are sending files that are compressed with StuffIt or similar you can choose either format because compressed files have no resources that must be preserved.