pathmgr_symlink()
QNX SDP8.0C Library ReferenceAPIDeveloper
Create a symlink
Synopsis:
#include <sys/pathmgr.h>
int pathmgr_symlink( const char * path,
const char * symlink );
Arguments:
- path
- The path that you want to link to.
- symlink
- The name of the link that you want to create.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The pathmgr_symlink() function creates a symbolic link, symlink, in the process manager that redirects to the path specified by path.
In order to create the link, your process must have the PROCMGR_AID_PATHSPACE ability enabled. For more information, see procmgr_ability().
The pathmgr_unlink() function removes the link.
Note:
- The symbolic link isn't permanent and is lost when the system reboots.
- You can get some surprising results if you create a symbolic link to a directory that's a symbolic link
to somewhere else.
For more information, see
Links and inodes
in the Working with Filesystems chapter of the QNX OS User's Guide.
Returns:
- 0
- Success.
- -1
- An error occurred (errno is set).
Errors:
- EACCES
- Security policies are in use and there is no rule to permit the use of that path.
- EBUSY
-
- A symlink of the given name already exists.
- ENOMEM
- There isn't enough free memory to complete the operation.
- EPERM
- The calling process doesn't have the required permission; see procmgr_ability().
Examples:
#include <stdio.h>
#include <sys/pathmgr.h>
int main(int argc, char **argv) {
/* Create a link from /mytmp to /dev/shmem */
if(pathmgr_symlink("/dev/shmem", "/mytmp") == -1) {
perror("Can't make link");
}
getchar();
if(pathmgr_unlink("/mytmp") == -1) {
perror("Can't unlink ");
}
return 0;
}
Classification:
Safety: | |
---|---|
Cancellation point | Yes |
Signal handler | Yes |
Thread | Yes |
Page updated: