What is UNIX

White Paper: An Extended AR format proposal

One item that affects many existing UNIX systems is the inability of the ar (library archive maintenance utility) to operate correctly for files whose owner uids/gids numeric values are greater than 64k or to operate on very large files.

This is due to a historical limitation in the ar header, which typically includes the following:

struct ar_hdr
{
char ar_name[16];
........
char ar_uid[6];
char ar_gid[6];
........
char ar_size[10]
}

The matter has been considered by the working group that develops the Single UNIX Specification. They do not specify the ar format in the specification , but have developed the following proposal for an extended ar format .

#define ARXMAG "!<archext>\n" /* String that begins an archive file. */
#define SARXMAG 11 	/* Size of that string. */

#define ARFMAG "`\n" /* String in ar_fmag at end of each header. */

struct ar_hdr
{
	char ar_name[16]; /* Member file name, sometimes terminated */
	char ar_date[12]; /* File date, decimal seconds since Epoch. */
	char ar_uid[20], ar_gid[20];/* User and group IDs, in ASCII decimal. */
	char ar_mode[8]; /* File mode, in ASCII octal. */
	char ar_size[20]; /* File size, in ASCII decimal. */
	char ar_fmag[2]; /* Always contains ARFMAG. */
};

If you have comments on this proposal please send them to Andrew Josey (ajosey(at)opengroup.org).


Single UNIX Specification UNIX Documentation Registered Products catalog White papers UNIX API Tables
UNIX and the Year 2000 Test tool downloads About The Open Group The Authorized Guide to UNIX 98 UNIX Resources

UNIX is a registered trademark of The Open Group.

Copyright © 1997-1999 , The Open Group.