10-02-2008
Read the man page for stat/read on your system. It lists the errno values stat (or any listed syscall) can return. When you go from Linux to HPUX - as an example - you can see differences.
Linux:
Quote:
Errors
EACCES
Search permission is denied for one of the directories in the path prefix of path. (See also path_resolution(2).)
EBADF
filedes is bad.
EFAULT
Bad address.
ELOOP
Too many symbolic links encountered while traversing the path.
ENAMETOOLONG
File name too long.
ENOENT
A component of the path path does not exist, or the path is an empty string.
ENOMEM
Out of memory (i.e. kernel memory).
ENOTDIR
A component of the path is not a directory.
HPUX
Quote:
ERRRORS
EFAULT buf or path points to an invalid address
EOVERFLOW the file size in bytes cannot be represented in the structure pointed to...
If you find a different errno value then it was set before or after your stat call.
10 More Discussions You Might Find Interesting
1. Programming
In Tru64 Unix, the 'errno' variable is not thread safe.
Could anybody help me about how to make it thread safe or how to check 'errno' in a Multithreaded program ????
The Programming process is like this.
There are some definite number of threads having their own task.
There is one... (2 Replies)
Discussion started by: S.Vishwanath
2 Replies
2. Programming
Hello,
I need to make a lib with pthread, when I run my make file all is good. But when I run my test program, I test errno in the begining and is already set to 251. Is it normal ??? What can I modify in my Makefile to have errno set to 0 ???
Thanks
$make
gcc -D_REENTRANT -shared -fpic... (3 Replies)
Discussion started by: dts
3 Replies
3. Programming
How should I use errno in a c program and what info does it have .
I am working with directories and files.
So can any one tell me How to access errno?I am using the stat() function on \etc directory and I am alble to access only the half of the directories.I am not able to access other half and... (6 Replies)
Discussion started by: vijlak
6 Replies
4. Programming
here the program gives a odd result:
#include <stdio.h>
int main(){
perror("first");
perror("next");
return 0;
}
result:
first: Success
next: Illegal seek
why? any resonable explanation? i found no information about this in man pages.
thanks in advance (2 Replies)
Discussion started by: ebd
2 Replies
5. Programming
from mmap manpage I get it's errors discription:
The addresses specified by the range [off, off + len) are invalid
for filedes.
How could I trigger a ENXIO ? anyone can input the code?
Lei (3 Replies)
Discussion started by: yanglei_fage
3 Replies
6. Linux
Dear all,
CentOS 6
After executing "yum update -y" command I am facing this error. Please help me out.
thanks in advance. Full error & error code is given as follow:
... (7 Replies)
Discussion started by: saqlain.bashir
7 Replies
7. Programming
I am calling getpwnam_r with all proper argument as below:-
rv = getpwnam_r(name, result, buffer, buflen);
This program runs fine on sol 8/9/10.
But on sol 11 it returns NULL with errno set to 25
(#define ENOTTY 25 /* Inappropriate ioctl for device */)
All boxes are... (2 Replies)
Discussion started by: Ranajit
2 Replies
8. Programming
I am opening a text file using open() system call in O_RDONLY mode.
open() returns me a valid handler but also sets errno to 13 i.e. EACCES(Permission denied).
Question is when open() is returning a valid handler then why does it sets the errno?
Should not errno be set only in case of error... (10 Replies)
Discussion started by: rupeshkp728
10 Replies
9. UNIX for Dummies Questions & Answers
I am running the gxemul software under cygwin,
Just when installing the .iso image, I got the error shown in
the picture. Any ideas what's happening?
Thanks
Jack (1 Reply)
Discussion started by: lucky7456969
1 Replies
10. AIX
Hi, I need to look at a recent copy of /usr/include/errno.h from AIX 7.2 to check some symbols. In particular, I'm curious if it defines EOWNERDEAD and ENOTRECOVERABLE. Can someone who has access to 7.2 please check for me? Thanks! (1 Reply)
Discussion started by: topcat
1 Replies
LEARN ABOUT PHP
resolvepath
resolvepath(2) System Calls resolvepath(2)
NAME
resolvepath - resolve all symbolic links of a path name
SYNOPSIS
#include <unistd.h>
int resolvepath(const char *path, char *buf, size_t bufsiz);
DESCRIPTION
The resolvepath() function fully resolves all symbolic links in the path name path into a resulting path name free of symbolic links and
places the resulting path name in the buffer buf which has size bufsiz. The resulting path name names the same file or directory as the
original path name. All ``.'' components are eliminated and every non-leading ``..'' component is eliminated together with its preceding
directory component. If leading ``..'' components reach to the root directory, they are replaced by ``/''. If the number of bytes in the
resulting path name is less than bufsiz, the contents of the remainder of buf are unspecified.
RETURN VALUES
Upon successful completion, resolvepath() returns the count of bytes placed in the buffer. Otherwise, it returns -1, leaves the buffer
unchanged, and sets errno to indicate the error.
ERRORS
The resolvepath() function will fail if:
EACCES Search permission is denied for a component of the path prefix of path or for a path prefix component resulting
from the resolution of a symbolic link.
EFAULT The path or buf argument points to an illegal address.
EIO An I/O error occurred while reading from the file system.
ENOENT The path argument is an empty string or a component of path or a path name component produced by resolving a sym-
bolic link does not name an existing file.
ELOOP Too many symbolic links were encountered in resolving path.
ENAMETOOLONG The length of path exceeds PATH_MAX, or a path name component is longer than NAME_MAX. Path name resolution of a
symbolic link produced an intermediate result whose length exceeds PATH_MAX or a component whose length exceeds
NAME_MAX.
ENOTDIR A component of the path prefix of path or of a path prefix component resulting from the resolution of a symbolic
link is not a directory.
USAGE
No more than PATH_MAX bytes will be placed in the buffer. Applications should not assume that the returned contents of the buffer are null-
terminated.
SEE ALSO
readlink(2), realpath(3C)
SunOS 5.10 12 May 1997 resolvepath(2)