- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files
- Examples

Modules | Functions
Evil

Microsoft Windows portability layer. More...

## Modules
| Dirent.h functions
| This header provides functions ported from Unix in dirent.h.
| Functions that manage dynamic-link libraries.
| x * This header provides functions to load and unload dynamic-link libaries, to get the address of a symbol, and to get diagnostic information.
| Inet.h functions
| This header provides functions ported from Unix in arpa/inet.h.
| Main
| This header provides functions to initialize and shut down the Evil library.
| Stdio.h functions
| This header provides functions ported from Unix in stdio.h.
| Stdlib.h functions.
| This header provides functions ported from Unix in stdlib.h.
| String.h functions.
| This header provides functions ported from Unix in string.h.
| Time.h functions
| This header provides functions ported from Unix in time.h.
| Unistd.h functions
| This header provides functions ported from Unix in unistd.h.
| Pwd.h functions
| This header provides functions ported from Unix in dirent.h.
| Functions that manage memory mappping.
| This header provides the meomry map functions mmap and munmap.

## Functions
int | fcntl (int fd, int cmd,...)
| Provide control over file descriptors. More...
wchar_t * | evil_char_to_wchar (const char *text)
| Convert a string from char * to wchar_t *. More...
char * | evil_wchar_to_char (const wchar_t *text)
| Convert a string from wchar_t * to char *. More...
char * | evil_utf16_to_utf8 (const wchar_t *text)
| Convert a string from UTF-16 to UTF-8. More...
const char * | evil_tmpdir_get (void)
| Return a dir to store temporary files. More...
const char * | evil_homedir_get (void)
| Return a dir to store personal files. More...
int | evil_path_is_absolute (const char *path)
| check if the given path is absolute. More...

## Detailed Description

Microsoft Windows portability layer.

## Function Documentation

int fcntl | ( | int | fd,
|  | int | cmd,
|  |  | ...
| ) |  |

Provide control over file descriptors.

Parameters

  fd | The file descriptor.
  cmd | The type of control.

Returns
  0 on success, -1 otherwise.

Performs one of various miscellaneous operations on `fd`. The operation in question is determined by `cmd:`

- F_SETFD: Set the close-on-exec flag to the value specified by the argument after command (only the least significant bit is used).
- F_SETLK and F_SETLKW: used to manage discretionary file locks. The third argument must be a pointer to a struct flock (that may be overwritten by this call).

This function returns 0 on success, -1 otherwise.

Conformity: None.

Supported OS: Windows Vista, Windows XP or Windows 2000 Professional.

References flock::l_len, flock::l_start, flock::l_type, and flock::l_whence.

Referenced by ecore_pipe_full_add(), eeze_mount_tabs_watch(), eina_file_open(), and eina_mmap_safety_enabled_set().

wchar_t* evil_char_to_wchar | ( | const char * | text | ) |

Convert a string from char * to wchar_t *.

Parameters

  text | The string to convert.

Returns
  The converted string.

Convert a string from char * to wchar_t * and return it. If the allocation or conversion fails, NULL is returned. On success, the returned value must be freed when it is not used anymore.

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

Referenced by dlopen(), dlsym(), and opendir().

char* evil_wchar_to_char | ( | const wchar_t * | text | ) |

Convert a string from wchar_t * to char *.

Parameters

  text | The string to convert.

Returns
  The converted string.

Convert a string from wchar_t * to char * and return it. If the allocation or conversion fails, NULL is returned. On success, the returned value must be freed when it is not used anymore.

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

Referenced by getpwuid(), opendir(), and readdir().

char* evil_utf16_to_utf8 | ( | const wchar_t * | text | ) |

Convert a string from UTF-16 to UTF-8.

Parameters

  text | The string to convert in UTF-16.

Returns
  The converted string in UTF-8.

Convert a string from UTF-16 to UTF-8 and return it. If the allocation or conversion fails, NULL is returned. On success, the returned value must be freed when it is not used anymore.

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

const char* evil_tmpdir_get | ( | void |  | ) |

Return a dir to store temporary files.

Returns
  The directory to store temporary files.

Return a directory to store temporary files. The function gets the value of the following environment variables, and in that order:

- TMP
- TEMP
- USERPROFILE
- WINDIR and returns its value if it exists. If none exists, the function returns "C:\".

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

Referenced by eina_file_mkdtemp(), and eina_file_mkstemp().

const char* evil_homedir_get | ( | void |  | ) |

Return a dir to store personal files.

Returns
  The directory to store personal files.

Return a directory to store personal files. The function gets the value of the following environment variables, and in that order:

- HOME
- USERPROFILE
- WINDIR and returns its value if it exists. If none exists, the function returns "C:\".

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

Referenced by getpwuid().

int evil_path_is_absolute | ( | const char * | path | ) |

check if the given path is absolute.

Parameters

  path | The path to check.

Returns
  1 if the given path is absolute, 0 otherwise.

Check if the path `path` is absolute or not. An absolute path must begin with a letter (upper or lower case), followed by by the char ':', followed by the char '/' or '\'. If `path` is absolute this function returns 1, otherwise it returns 0. If `path` is `NULL`, it returns 0.

Conformity: Non applicable.

Supported OS: Windows 95, Windows 98, Windows Me, Windows NT, Windows 2000, Windows XP.

Since
  1.7

Referenced by eina_file_path_relative().