FEA2: Difference between revisions
New |
mNo edit summary |
||
Line 43: | Line 43: | ||
A critical extended attribute is one which is necessary for the correct operation of the operating system or of a particular operation. EAs should be marked as critical if their loss would cause the system or program to perform incorrectly. For example, a mail program might store mail headers in EAs. The loss of the header from a message would normally render the mail program unable to further use that message. This would be unacceptable, so the mail program should mark this EA as critical. | A critical extended attribute is one which is necessary for the correct operation of the operating system or of a particular operation. EAs should be marked as critical if their loss would cause the system or program to perform incorrectly. For example, a mail program might store mail headers in EAs. The loss of the header from a message would normally render the mail program unable to further use that message. This would be unacceptable, so the mail program should mark this EA as critical. | ||
[[OS2_API | Back to OS/2 API]] | |||
[[Category:The OS/2 API Project]] |
Revision as of 06:28, 30 October 2011
FEA2
FEA2 defines the format for setting the full extended attributes in the file.
Type
ULONG oNextEntryOffset BYTE fEA BYTE cbName USHORT cbValue CHAR szName[1]
C Declaration Method
typedef struct
Fields
oNextEntryOffset Offset to next entry. fEA Extended attributes flag.
FEA_NEEDEA Extended attributes are critical. If this flag is set, this file cannot be copied to a file system that does not support extended attributes. This flag should only be set if extended attributes are critical to the processing of this file.
0 Extended attributes are not critical.
cbName Length of szName, not including NULL. This value must be greater than 0.
cbValue Value length. Sending an EA with cbValue set to 0 in the FEA2 data structure causes that attribute to be deleted, if possible. Receiving an EA with cbValue set to 0 in the FEA2 data structure indicates that the attribute is not present.
szName[1] Extended attribute name.
Coment
Extended attributes (EAs) are non-critical by default. A non-critical EA is one that is not necessary to the functionality of the application. If a non-critical EA is lost, the system continues to operate correctly. For example, losing the icons associated with data files does not generally cause any ill effect other than the inability to show the icon.
A critical extended attribute is one which is necessary for the correct operation of the operating system or of a particular operation. EAs should be marked as critical if their loss would cause the system or program to perform incorrectly. For example, a mail program might store mail headers in EAs. The loss of the header from a message would normally render the mail program unable to further use that message. This would be unacceptable, so the mail program should mark this EA as critical.