File: Cns_stat.man

package info (click to toggle)
lfc-postgres 1.7.4.7-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 13,676 kB
  • ctags: 10,779
  • sloc: ansic: 146,136; sh: 13,176; perl: 11,142; python: 5,529; cpp: 5,113; sql: 1,790; makefile: 861; fortran: 113
file content (181 lines) | stat: -rw-r--r-- 3,596 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
.\" @(#)$RCSfile: Cns_stat.man,v $ $Revision: 1.1.1.1 $ $Date: 2003/09/02 07:08:38 $ CERN IT-PDP/DM Jean-Philippe Baud
.\" Copyright (C) 1999-2003 by CERN/IT/PDP/DM
.\" All rights reserved
.\"
.TH CNS_STAT 3 "$Date: 2003/09/02 07:08:38 $" CASTOR "Cns Library Functions"
.SH NAME
Cns_stat \- get information about a CASTOR file or directory in the name server
.SH SYNOPSIS
.B #include <sys/types.h>
.br
\fB#include "Cns_api.h"\fR
.sp
.BI "int Cns_lstat (const char *" path ,
.BI "struct Cns_filestat *" statbuf )
.sp
.BI "int Cns_stat (const char *" path ,
.BI "struct Cns_filestat *" statbuf )
.sp
.BI "int Cns_statx (const char *" path ,
.BI "struct Cns_fileid *" file_uniqueid ,
.BI "struct Cns_filestat *" statbuf )
.SH DESCRIPTION
.B Cns_stat
gets information about a CASTOR file or directory in the name server.
.LP
.B Cns_lstat
is identical to
.B Cns_stat
except for symbolic links.
.B Cns_lstat
retrieves information about the link itself, while
.B Cns_stat
gets information about the file/directory referenced by the symbolic link.
.LP
.B Cns_statx
returns the same information plus the file unique id (name server hostname
and file id).
The file can be specified by
.I path
name or by
.IR file_uniqueid .
If both are given,
.I file_uniqueid
is used.
.TP
.I path
specifies the logical pathname relative to the current CASTOR directory or
the full CASTOR pathname.
.LP
The structure pointed to by
.I statbuf
contains the following members:
.RS
u_signed64	fileid;		/* entry unique identifier */
.br
mode_t		filemode;	/* see below */
.br
int		nlink;		/* number of files in a directory */
.br
uid_t		uid;
.br
gid_t		gid;
.br
u_signed64	filesize;
.br
time_t		atime;		/* last access to file */
.br
time_t		mtime;		/* last file modification */
.br
time_t		ctime;		/* last metadata modification */
.br
short		fileclass;		/* 1--> experiment, 2 --> user */
.br
char		status;		/* '-' --> online, 'm' --> migrated */
.RE
.LP
filemode is constructed by OR'ing the bits defined in
.RB < sys/stat.h >
under Unix or \fB "statbits.h"\fR under Windows/NT:
.sp
.RS
.B S_IFLNK	0xA000		
symbolic link
.br
.B S_IFREG	0x8000		
regular file
.br
.B S_IFDIR	0x4000		
directory
.br
.B S_ISUID	0004000		
set user ID on execution
.br
.B S_ISGID	0002000		
set group ID on execution
.br
.B S_ISVTX	0001000		
sticky bit
.br
.B S_IRUSR	0000400		
read by owner
.br
.B S_IWUSR	0000200		
write by owner
.br
.B S_IXUSR	0000100		
execute/search by owner
.br
.B S_IRGRP	0000040		
read by group
.br
.B S_IWGRP	0000020		
write by group
.br
.B S_IXGRP	0000010		
execute/search by group
.br
.B S_IROTH	0000004		
read by others
.br
.B S_IWOTH	0000002		
write by others
.br
.B S_IXOTH	0000001		
execute/search by others
.RE
.SH RETURN VALUE
This routine returns 0 if the operation was successful or -1 if the operation
failed. In the latter case,
.B serrno
is set appropriately.
.SH ERRORS
.TP 1.3i
.B ENOENT
The named file/directory does not exist or is a null pathname.
.TP
.B EACCES
Search permission is denied on a component of the
.I path
prefix.
.TP
.B EFAULT
.I path
or
.I statbuf
is a NULL pointer.
.TP
.B ENOTDIR
A component of
.I path
prefix is not a directory.
.TP
.B ENAMETOOLONG
The length of
.I path
exceeds
.B CA_MAXPATHLEN
or the length of a
.I path
component exceeds
.BR CA_MAXNAMELEN .
.TP
.B SENOSHOST
Host unknown.
.TP
.B SENOSSERV
Service unknown.
.TP
.B SECOMERR
Communication error.
.TP
.B ENSNACT
Name server is not running or is being shutdown.
.SH SEE ALSO
.BR Castor_limits(4) ,
.BR Cns_chdir(3) ,
.BR Cns_chmod(3) ,
.BR Cns_chown(3) ,
.B Cns_creat(3)
.SH AUTHOR
\fBCASTOR\fP Team <castor.support@cern.ch>