Tizen Native API  7.0

Extended Attributes handling.

Functions

Eina_Iteratoreina_xattr_ls (const char *file)
 Gets an iterator that lists all extended attribute of a file.
Eina_Iteratoreina_xattr_value_ls (const char *file)
 Gets an iterator that list all extended attribute value related to a fd.
Eina_Iteratoreina_xattr_fd_ls (int fd)
 Gets an iterator that list all extended attribute related to a fd.
Eina_Iteratoreina_xattr_value_fd_ls (int fd)
 Gets an iterator that list all extended attribute value related to a fd.
Eina_Bool eina_xattr_copy (const char *src, const char *dst) 2)
 Copies the extended attribute from one file to another.
Eina_Bool eina_xattr_fd_copy (int src, int dst)
 Copies the extended attribute from one file descriptor to another.
void * eina_xattr_get (const char *file, const char *attribute, ssize_t *size) 2
 Retrieves an extended attribute from a file.
void void * eina_xattr_fd_get (int fd, const char *attribute, ssize_t *size) 3)
 Retrieves an extended attribute from a file descriptor.
Eina_Bool eina_xattr_set (const char *file, const char *attribute, const void *data, ssize_t length, Eina_Xattr_Flags flags) 2
 Sets an extended attribute on a file.
Eina_Bool Eina_Bool eina_xattr_fd_set (int fd, const char *attribute, const void *data, ssize_t length, Eina_Xattr_Flags flags) 3)
 Sets an extended attribute on a file descriptor.
Eina_Bool eina_xattr_del (const char *file, const char *attribute) 2)
 Deletes (removes) an extended attribute from a file.
Eina_Bool eina_xattr_fd_del (int fd, const char *attribute)
 Deletes (removes) an extended attribute from a file descriptor.
Eina_Bool eina_xattr_string_set (const char *file, const char *attribute, const char *data, Eina_Xattr_Flags flags)
 Sets a string as a extended attribute properties.
char * eina_xattr_string_get (const char *file, const char *attribute)
 Gets a string from an extended attribute properties.
Eina_Bool eina_xattr_double_set (const char *file, const char *attribute, double value, Eina_Xattr_Flags flags)
 Sets a double as a extended attribute properties.
Eina_Bool eina_xattr_double_get (const char *file, const char *attribute, double *value)
 Gets a double from an extended attribute properties.
Eina_Bool eina_xattr_int_set (const char *file, const char *attribute, int value, Eina_Xattr_Flags flags)
 Sets an int as a extended attribute properties.
Eina_Bool eina_xattr_int_get (const char *file, const char *attribute, int *value)
 Gets a int from an extended attribute properties.

Enumeration Type Documentation

define extended attribute creation

Since (EFL) :
1.1
Enumerator:
EINA_XATTR_INSERT 

This is the default behavior, it will either create or replace the extended attribute

EINA_XATTR_REPLACE 

This will only succeed if the extended attribute previously existed

EINA_XATTR_CREATED 

This will only succeed if the extended attribute wasn't previously set

EINA_XATTR_FLAGS_INSERT 

This is the default behavior, it will either create or replace the extended attribute

EINA_XATTR_FLAGS_REPLACE 

This will only succeed if the extended attribute previously existed

EINA_XATTR_FLAGS_CREATED 

This will only succeed if the extended attribute wasn't previously set


Function Documentation

Eina_Bool eina_xattr_copy ( const char *  src,
const char *  dst 
)

Copies the extended attribute from one file to another.

Parameters:
[in]srcsource file to use as input.
[in]dstdestination file to use as output.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
See also:
eina_xattr_fd_copy()
Since (EFL) :
1.8
Since :
3.0
Eina_Bool eina_xattr_del ( const char *  file,
const char *  attribute 
)

Deletes (removes) an extended attribute from a file.

Parameters:
[in]fileThe file to del the extended attribute from.
[in]attributeThe attribute to del.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.8
Since :
3.0
Eina_Bool eina_xattr_double_get ( const char *  file,
const char *  attribute,
double *  value 
)

Gets a double from an extended attribute properties.

Parameters:
[in]fileThe file to get the string from.
[in]attributeThe attribute to get.
[out]valueWhere to put the extracted value
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.

This call check that the double is correctly set.

Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_double_set ( const char *  file,
const char *  attribute,
double  value,
Eina_Xattr_Flags  flags 
)

Sets a double as a extended attribute properties.

Parameters:
[in]fileThe file to set the double to.
[in]attributeThe attribute to set.
[in]valueThe NULL-terminated double to set.
[in]flagsDefine the set policy.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_fd_copy ( int  src,
int  dst 
)

Copies the extended attribute from one file descriptor to another.

Parameters:
[in]srcsource file descriptor to use as input.
[in]dstdestination file descriptor to use as output.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
See also:
eina_xattr_copy()
Since (EFL) :
1.8
Since :
3.0
Eina_Bool eina_xattr_fd_del ( int  fd,
const char *  attribute 
)

Deletes (removes) an extended attribute from a file descriptor.

Parameters:
[in]fdThe file descriptor to del the extended attribute from.
[in]attributeThe attribute to del.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.8
Since :
3.0
void void* eina_xattr_fd_get ( int  fd,
const char *  attribute,
ssize_t *  size 
)

Retrieves an extended attribute from a file descriptor.

Parameters:
[in]fdThe file descriptor to retrieve the extended attribute from.
[in]attributeThe extended attribute name to retrieve.
[out]sizeThe size of the retrieved extended attribute.
Returns:
the allocated data that hold the extended attribute value.

It will return NULL and *size will be 0 if it fails.

Since (EFL) :
1.8
Since :
3.0

Gets an iterator that list all extended attribute related to a fd.

Parameters:
[in]fdThe file descriptor to retrieve the extended attribute list from.
Returns:
an iterator.

The iterator will not allocate any data during the iteration step, so you need to copy them yourself if you need.

Since (EFL) :
1.2
Since :
2.3
Eina_Bool Eina_Bool eina_xattr_fd_set ( int  fd,
const char *  attribute,
const void *  data,
ssize_t  length,
Eina_Xattr_Flags  flags 
)

Sets an extended attribute on a file descriptor.

Parameters:
[in]fdThe file descriptor to set the extended attribute to.
[in]attributeThe attribute to set.
[in]dataThe data to set.
[in]lengthThe length of the data to set.
[in]flagsDefine the set policy.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.8
Since :
3.0
void* eina_xattr_get ( const char *  file,
const char *  attribute,
ssize_t *  size 
)

Retrieves an extended attribute from a file.

Parameters:
[in]fileThe file to retrieve the extended attribute from.
[in]attributeThe extended attribute name to retrieve.
[out]sizeThe size of the retrieved extended attribute.
Returns:
the allocated data that hold the extended attribute value.

It will return NULL and *size will be 0 if it fails.

Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_int_get ( const char *  file,
const char *  attribute,
int *  value 
)

Gets a int from an extended attribute properties.

Parameters:
[in]fileThe file to get the string from.
[in]attributeThe attribute to get.
[out]valueWhere to put the extracted value
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.

This call check that the int is correctly set.

Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_int_set ( const char *  file,
const char *  attribute,
int  value,
Eina_Xattr_Flags  flags 
)

Sets an int as a extended attribute properties.

Parameters:
[in]fileThe file to set the int to.
[in]attributeThe attribute to set.
[in]valueThe NULL-terminated int to set.
[in]flagsDefine the set policy.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.1
Since :
2.3
Eina_Iterator* eina_xattr_ls ( const char *  file)

Gets an iterator that lists all extended attribute of a file.

Parameters:
[in]fileThe filename to retrieve the extended attribute list from.
Returns:
an iterator.

The iterator will not allocate any data during the iteration step, so you need to copy them yourself if you need.

Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_set ( const char *  file,
const char *  attribute,
const void *  data,
ssize_t  length,
Eina_Xattr_Flags  flags 
)

Sets an extended attribute on a file.

Parameters:
[in]fileThe file to set the extended attribute to.
[in]attributeThe attribute to set.
[in]dataThe data to set.
[in]lengthThe length of the data to set.
[in]flagsDefine the set policy.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.1
Since :
2.3
char* eina_xattr_string_get ( const char *  file,
const char *  attribute 
)

Gets a string from an extended attribute properties.

Parameters:
[in]fileThe file to get the string from.
[in]attributeThe attribute to get.
Returns:
A valid string on success, NULL otherwise.

This call check that the string is properly NULL-terminated before returning it.

Since (EFL) :
1.1
Since :
2.3
Eina_Bool eina_xattr_string_set ( const char *  file,
const char *  attribute,
const char *  data,
Eina_Xattr_Flags  flags 
)

Sets a string as a extended attribute properties.

Parameters:
[in]fileThe file to set the string to.
[in]attributeThe attribute to set.
[in]dataThe NULL-terminated string to set.
[in]flagsDefine the set policy.
Returns:
EINA_TRUE on success, EINA_FALSE otherwise.
Since (EFL) :
1.1
Since :
2.3

Gets an iterator that list all extended attribute value related to a fd.

Parameters:
[in]fdThe file descriptor to retrieve the extended attribute list from.
Returns:
An iterator.

The iterator will not allocate any data during the iteration step, so you need to copy them yourself if you need. The iterator will provide an Eina_Xattr structure.

Since (EFL) :
1.2
Since :
2.3
Eina_Iterator* eina_xattr_value_ls ( const char *  file)

Gets an iterator that list all extended attribute value related to a fd.

Parameters:
[in]fileThe filename to retrieve the extended attribute list from.
Returns:
An iterator.

The iterator will not allocate any data during the iteration step, so you need to copy them yourself if you need. The iterator will provide an Eina_Xattr structure.

Since (EFL) :
1.2
Since :
2.3