Jump to content

FEA2: Difference between revisions

From EDM2
Ak120 (talk | contribs)
m Ak120 moved page OS2 API:DataType:FEA2 to FEA2
Ak120 (talk | contribs)
mNo edit summary
Line 1: Line 1:
== FEA2 ==
FEA2 defines the format for setting the full extended attributes in the file.
FEA2 defines the format for setting the full extended attributes in the file.



Revision as of 19:07, 13 June 2017

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.