ftp.nice.ch/pub/next/unix/fonts/font.conversion.NIHS.bs.tar.gz#/font_conversion_NIHS.bs/mfrc/Source/mfrc.h

This is mfrc.h in view mode; [Download] [Up]

typedef unsigned char byte;
typedef unsigned short word;
typedef unsigned long ulong;

#define POST_TYPE (('P'<<24)+('O'<<16)+('S'<<8)+'T')

/* Format of a bin file:  (From mcvert by Doug Moore)
A bin file is composed of 128 byte blocks.  The first block is the
info_header (see below).  Then comes the data fork, null padded to fill the
last block.  Then comes the resource fork, padded to fill the last block.  A
proposal to follow with the text of the Get Info box has not been implemented,
to the best of my knowledge.  Version, zero1 and zero2 are what the receiving
program looks at to determine if a MacBinary transfer is being initiated.
*/ 

typedef struct {     /* info file header (128 bytes). Unfortunately, these
                        longs don't align to word boundaries */
	byte version;           /* there is only a version 0 at this time */
	byte nlen;              /* Length of filename. */
	byte name[63];          /* Filename (only 1st nlen are significant)*/
	byte type[4];           /* File type. */
	byte auth[4];           /* File creator. */
	byte flags;             /* file flags: LkIvBnSyBzByChIt */
	byte zero1;             /* Locked, Invisible,Bundle, System */
	                        /* Bozo, Busy, Changed, Init */
	byte icon_vert[2];      /* Vertical icon position within window */
	byte icon_horiz[2];     /* Horizontal icon postion in window */
	byte window_id[2];      /* Window or folder ID. */
	byte protect;           /* = 1 for protected file, 0 otherwise */
	byte zero2;
	byte dlen[4];           /* Data Fork length (bytes) -   most sig.  */
	byte rlen[4];           /* Resource Fork length         byte first */
	byte ctim[4];           /* File's creation date. */
	byte mtim[4];           /* File's "last modified" date. */
	byte ilen[2];           /* GetInfo message length */
	byte flags2;            /* Finder flags, bits 0-7 */
	byte unused[14];       

	byte packlen[4];        /* length of total files when unpacked */
	byte headlen[2];        /* length of secondary header */
	byte uploadvers;        /* Version of MacBinary II that the uploading p
ogram is written for */
	byte readvers;          /* Minimum MacBinary II version needed to read 
his file */
	byte crc[2];            /* CRC of the previous 124 bytes */
	byte padding[2];        /* two trailing unused bytes */
	} info_header;

typedef struct {
	long  rtype;
	short nrsc;
	short offset;
	} type_info;

typedef struct {
	short id;
	short name;
	long  offset;
	long  reserved;
	} ref_list;

#define POST_TEXT 1
#define POST_DATA 2
#define POST_END  5

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.