関数 | |
| int | smbc_stat (const char *url, struct stat *st) |
| Get information about a file or directory. | |
| int | smbc_fstat (int fd, struct stat *st) |
| Get file information via an file descriptor. | |
| int | smbc_chmod (const char *url, mode_t mode) |
| Change the permissions of a file. | |
| int | smbc_utimes (const char *url, struct timeval *tbuf) |
| Change the last modification time on a file | |
| int | smbc_utime (const char *fname, struct utimbuf *utbuf) |
| Change the last modification time on a file | |
| int | smbc_setxattr (const char *url, const char *name, const void *value, size_t size, int flags) |
| Set extended attributes for a file. | |
| int | smbc_lsetxattr (const char *url, const char *name, const void *value, size_t size, int flags) |
| Set extended attributes for a file. | |
| int | smbc_fsetxattr (int fd, const char *name, const void *value, size_t size, int flags) |
| Set extended attributes for a file. | |
| int | smbc_getxattr (const char *url, const char *name, const void *value, size_t size) |
| Get extended attributes for a file. | |
| int | smbc_lgetxattr (const char *url, const char *name, const void *value, size_t size) |
| Get extended attributes for a file. | |
| int | smbc_fgetxattr (int fd, const char *name, const void *value, size_t size) |
| Get extended attributes for a file. | |
| int | smbc_removexattr (const char *url, const char *name) |
| Remove extended attributes for a file. | |
| int | smbc_lremovexattr (const char *url, const char *name) |
| Remove extended attributes for a file. | |
| int | smbc_fremovexattr (int fd, const char *name) |
| Remove extended attributes for a file. | |
| int | smbc_listxattr (const char *url, char *list, size_t size) |
| List the supported extended attribute names associated with a file | |
| int | smbc_llistxattr (const char *url, char *list, size_t size) |
| List the supported extended attribute names associated with a file The POSIX function which this maps to would act on a symbolic link rather than acting on what the symbolic link points to, but with no symbolic links in SMB file systems, this function is functionally identical to smbc_listxattr(). | |
| int | smbc_flistxattr (int fd, char *list, size_t size) |
| List the supported extended attribute names associated with a file | |
| int smbc_stat | ( | const char * | url, | |
| struct stat * | st | |||
| ) |
Get information about a file or directory.
| url | The smb url to get information for | |
| st | pointer to a buffer that will be filled with standard Unix struct stat information. |
libsmb_compat.c の 282 行で定義されています。
参照先 _SMBCCTX::stat・statcont.
参照元 cb_select_child()・tool_list().
| int smbc_fstat | ( | int | fd, | |
| struct stat * | st | |||
| ) |
Get file information via an file descriptor.
| fd | Open file handle from smbc_open() or smbc_creat() | |
| st | pointer to a buffer that will be filled with standard Unix struct stat information. |
libsmb_compat.c の 287 行で定義されています。
参照先 find_fd()・_SMBCCTX::fstat・statcont.
参照元 do_get()・do_put()・smb_download_dir()・smb_download_file().
00288 { 00289 SMBCFILE * file = find_fd(fd); 00290 return (statcont->fstat)(statcont, file, st); 00291 }
| int smbc_chmod | ( | const char * | url, | |
| mode_t | mode | |||
| ) |
Change the permissions of a file.
| url | The smb url of the file or directory to change permissions of | |
| mode | The permissions to set:
|
libsmb_compat.c の 293 行で定義されています。
参照先 _SMBCCTX::chmod・statcont.
| int smbc_utimes | ( | const char * | url, | |
| struct timeval * | tbuf | |||
| ) |
Change the last modification time on a file
| url | The smb url of the file or directory to change the modification time of | |
| tbuf | A timeval structure which contains the desired modification time. NOTE: Only the tv_sec field is used. The tv_usec (microseconds) portion is ignored. |
libsmb_compat.c の 298 行で定義されています。
参照先 statcont・_SMBCCTX::utimes.
| int smbc_utime | ( | const char * | fname, | |
| struct utimbuf * | utbuf | |||
| ) |
Change the last modification time on a file
| url | The smb url of the file or directory to change the modification time of | |
| utbuf | A utimebuf structure which contains the desired modification time. NOTE: Although the structure contains an access time as well, the access time value is ignored. |
libsmb_compat.c の 304 行で定義されています。
参照先 statcont・_SMBCCTX::utimes.
00305 { 00306 struct timeval tv[2]; 00307 00308 if (utbuf == NULL) 00309 return (statcont->utimes)(statcont, fname, NULL); 00310 00311 tv[0].tv_sec = utbuf->actime; 00312 tv[1].tv_sec = utbuf->modtime; 00313 tv[0].tv_usec = tv[1].tv_usec = 0; 00314 00315 return (statcont->utimes)(statcont, fname, tv); 00316 }
| int smbc_setxattr | ( | const char * | url, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size, | |||
| int | flags | |||
| ) |
Set extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list)
| url | The smb url of the file or directory to set extended attributes for. | |
| name | The name of an attribute to be changed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter should contain a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | The value to be assigned to the specified attribute name. This buffer should contain only the attribute value if the name was of the "system.nt_sec_desc.<attribute_name>" form. If the name was of the "system.nt_sec_desc.*" form then a complete security descriptor, with name:value pairs separated by tabs, commas, or newlines (not spaces!), should be provided in this value buffer. A complete security descriptor will contain one or more entries selected from the following: |
The revision of the ACL specifies the internal Windows NT ACL revision for the security descriptor. If not specified it defaults to 1. Using values other than 1 may cause strange behaviour.
The owner and group specify the owner and group sids for the object. If the attribute name (either '*+' with a complete security descriptor, or individual 'owner+' or 'group+' attribute names) ended with a plus sign, the specified name is resolved to a SID value, using the server on which the file or directory resides. Otherwise, the value should be provided in SID-printable format as S-1-x-y-z, and is used directly. The <sid or="" name>=""> associated with the ACL: attribute should be provided similarly.
| size | The number of the bytes of data in the value buffer | |
| flags | A bit-wise OR of zero or more of the following: SMBC_XATTR_FLAG_CREATE - fail if the named attribute already exists SMBC_XATTR_FLAG_REPLACE - fail if the attribute does not already exist |
libsmb_compat.c の 319 行で定義されています。
参照先 _SMBCCTX::setxattr・statcont.
| int smbc_lsetxattr | ( | const char * | url, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size, | |||
| int | flags | |||
| ) |
Set extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list). The POSIX function which this maps to would act on a symbolic link rather than acting on what the symbolic link points to, but with no symbolic links in SMB file systems, this function is functionally identical to smbc_setxattr().
| url | The smb url of the file or directory to set extended attributes for. | |
| name | The name of an attribute to be changed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter should contain a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | The value to be assigned to the specified attribute name. This buffer should contain only the attribute value if the name was of the "system.nt_sec_desc.<attribute_name>" form. If the name was of the "system.nt_sec_desc.*" form then a complete security descriptor, with name:value pairs separated by tabs, commas, or newlines (not spaces!), should be provided in this value buffer. A complete security descriptor will contain one or more entries selected from the following: |
The revision of the ACL specifies the internal Windows NT ACL revision for the security descriptor. If not specified it defaults to 1. Using values other than 1 may cause strange behaviour.
The owner and group specify the owner and group sids for the object. If the attribute name (either '*+' with a complete security descriptor, or individual 'owner+' or 'group+' attribute names) ended with a plus sign, the specified name is resolved to a SID value, using the server on which the file or directory resides. Otherwise, the value should be provided in SID-printable format as S-1-x-y-z, and is used directly. The <sid or="" name>=""> associated with the ACL: attribute should be provided similarly.
| size | The number of the bytes of data in the value buffer | |
| flags | A bit-wise OR of zero or more of the following: SMBC_XATTR_FLAG_CREATE - fail if the named attribute already exists SMBC_XATTR_FLAG_REPLACE - fail if the attribute does not already exist |
libsmb_compat.c の 328 行で定義されています。
参照先 _SMBCCTX::setxattr・statcont.
| int smbc_fsetxattr | ( | int | fd, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size, | |||
| int | flags | |||
| ) |
Set extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list)
| fd | A file descriptor associated with an open file (as previously returned by smbc_open(), to get extended attributes for. | |
| name | The name of an attribute to be changed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter should contain a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | The value to be assigned to the specified attribute name. This buffer should contain only the attribute value if the name was of the "system.nt_sec_desc.<attribute_name>" form. If the name was of the "system.nt_sec_desc.*" form then a complete security descriptor, with name:value pairs separated by tabs, commas, or newlines (not spaces!), should be provided in this value buffer. A complete security descriptor will contain one or more entries selected from the following: |
The revision of the ACL specifies the internal Windows NT ACL revision for the security descriptor. If not specified it defaults to 1. Using values other than 1 may cause strange behaviour.
The owner and group specify the owner and group sids for the object. If the attribute name (either '*+' with a complete security descriptor, or individual 'owner+' or 'group+' attribute names) ended with a plus sign, the specified name is resolved to a SID value, using the server on which the file or directory resides. Otherwise, the value should be provided in SID-printable format as S-1-x-y-z, and is used directly. The <sid or="" name>=""> associated with the ACL: attribute should be provided similarly.
| size | The number of the bytes of data in the value buffer | |
| flags | A bit-wise OR of zero or more of the following: SMBC_XATTR_FLAG_CREATE - fail if the named attribute already exists SMBC_XATTR_FLAG_REPLACE - fail if the attribute does not already exist |
libsmb_compat.c の 337 行で定義されています。
参照先 errno・find_fd()・_SMBCFILE::fname・_SMBCCTX::setxattr・statcont.
00342 { 00343 SMBCFILE * file = find_fd(fd); 00344 if (file == NULL) { 00345 errno = EBADF; 00346 return -1; 00347 } 00348 return (statcont->setxattr)(statcont, file->fname, 00349 name, value, size, flags); 00350 }
| int smbc_getxattr | ( | const char * | url, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size | |||
| ) |
Get extended attributes for a file.
| url | The smb url of the file or directory to get extended attributes for. | |
| name | The name of an attribute to be retrieved. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | A pointer to a buffer in which the value of the specified attribute will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by value. This parameter may also be zero, in which case the size of the buffer required to hold the attribute value will be returned, but nothing will be placed into the value buffer. |
libsmb_compat.c の 352 行で定義されています。
参照先 _SMBCCTX::getxattr・statcont.
| int smbc_lgetxattr | ( | const char * | url, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size | |||
| ) |
Get extended attributes for a file.
The POSIX function which this maps to would act on a symbolic link rather than acting on what the symbolic link points to, but with no symbolic links in SMB file systems, this function is functionally identical to smbc_getxattr().
| url | The smb url of the file or directory to get extended attributes for. | |
| name | The name of an attribute to be retrieved. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | A pointer to a buffer in which the value of the specified attribute will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by value. This parameter may also be zero, in which case the size of the buffer required to hold the attribute value will be returned, but nothing will be placed into the value buffer. |
libsmb_compat.c の 360 行で定義されています。
参照先 _SMBCCTX::getxattr・statcont.
| int smbc_fgetxattr | ( | int | fd, | |
| const char * | name, | |||
| const void * | value, | |||
| size_t | size | |||
| ) |
Get extended attributes for a file.
| fd | A file descriptor associated with an open file (as previously returned by smbc_open(), to get extended attributes for. | |
| name | The name of an attribute to be retrieved. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
| value | A pointer to a buffer in which the value of the specified attribute will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by value. This parameter may also be zero, in which case the size of the buffer required to hold the attribute value will be returned, but nothing will be placed into the value buffer. |
libsmb_compat.c の 368 行で定義されています。
参照先 errno・find_fd()・_SMBCFILE::fname・_SMBCCTX::getxattr・statcont.
00372 { 00373 SMBCFILE * file = find_fd(fd); 00374 if (file == NULL) { 00375 errno = EBADF; 00376 return -1; 00377 } 00378 return (statcont->getxattr)(statcont, file->fname, name, value, size); 00379 }
| int smbc_removexattr | ( | const char * | url, | |
| const char * | name | |||
| ) |
Remove extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list)
| url | The smb url of the file or directory to remove the extended attributes for. | |
| name | The name of an attribute to be removed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
libsmb_compat.c の 381 行で定義されています。
参照先 _SMBCCTX::removexattr・statcont.
00383 { 00384 return (statcont->removexattr)(statcont, fname, name); 00385 }
| int smbc_lremovexattr | ( | const char * | url, | |
| const char * | name | |||
| ) |
Remove extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list) The POSIX function which this maps to would act on a symbolic link rather than acting on what the symbolic link points to, but with no symbolic links in SMB file systems, this function is functionally identical to smbc_removexattr().
| url | The smb url of the file or directory to remove the extended attributes for. | |
| name | The name of an attribute to be removed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
libsmb_compat.c の 387 行で定義されています。
参照先 _SMBCCTX::removexattr・statcont.
00389 { 00390 return (statcont->removexattr)(statcont, fname, name); 00391 }
| int smbc_fremovexattr | ( | int | fd, | |
| const char * | name | |||
| ) |
Remove extended attributes for a file.
This is used for modifying a file's security descriptor (i.e. owner, group, and access control list)
| fd | A file descriptor associated with an open file (as previously returned by smbc_open(), to get extended attributes for. | |
| name | The name of an attribute to be removed. Names are of one of the following forms: |
where <attribute name>=""> is one of:
revision owner owner+ group group+ acl:<name or="" sid>=""> acl+:<name or="" sid>="">
In the forms "system.nt_sec_desc.*" and "system.nt_sec_desc.*+", the asterisk and plus signs are literal, i.e. the string is provided exactly as shown, and the value parameter will return a complete security descriptor with name:value pairs separated by tabs, commas, or newlines (not spaces!).
The plus sign ('+') indicates that SIDs should be mapped to names. Without the plus sign, SIDs are not mapped; rather they are simply converted to a string format.
libsmb_compat.c の 393 行で定義されています。
参照先 errno・find_fd()・_SMBCFILE::fname・_SMBCCTX::removexattr・statcont.
00395 { 00396 SMBCFILE * file = find_fd(fd); 00397 if (file == NULL) { 00398 errno = EBADF; 00399 return -1; 00400 } 00401 return (statcont->removexattr)(statcont, file->fname, name); 00402 }
| int smbc_listxattr | ( | const char * | url, | |
| char * | list, | |||
| size_t | size | |||
| ) |
List the supported extended attribute names associated with a file
| url | The smb url of the file or directory to list the extended attributes for. | |
| list | A pointer to a buffer in which the list of attributes for the specified file or directory will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by list. This parameter may also be zero, in which case the size of the buffer required to hold all of the attribute names will be returned, but nothing will be placed into the list buffer. |
libsmb_compat.c の 404 行で定義されています。
参照先 _SMBCCTX::listxattr・statcont.
| int smbc_llistxattr | ( | const char * | url, | |
| char * | list, | |||
| size_t | size | |||
| ) |
List the supported extended attribute names associated with a file The POSIX function which this maps to would act on a symbolic link rather than acting on what the symbolic link points to, but with no symbolic links in SMB file systems, this function is functionally identical to smbc_listxattr().
| url | The smb url of the file or directory to list the extended attributes for. | |
| list | A pointer to a buffer in which the list of attributes for the specified file or directory will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by list. This parameter may also be zero, in which case the size of the buffer required to hold all of the attribute names will be returned, but nothing will be placed into the list buffer. |
libsmb_compat.c の 411 行で定義されています。
参照先 _SMBCCTX::listxattr・statcont.
| int smbc_flistxattr | ( | int | fd, | |
| char * | list, | |||
| size_t | size | |||
| ) |
List the supported extended attribute names associated with a file
| fd | A file descriptor associated with an open file (as previously returned by smbc_open(), to get extended attributes for. | |
| list | A pointer to a buffer in which the list of attributes for the specified file or directory will be placed (unless size is zero). | |
| size | The size of the buffer pointed to by list. This parameter may also be zero, in which case the size of the buffer required to hold all of the attribute names will be returned, but nothing will be placed into the list buffer. |
libsmb_compat.c の 418 行で定義されています。
参照先 errno・find_fd()・_SMBCFILE::fname・_SMBCCTX::listxattr・statcont.
00421 { 00422 SMBCFILE * file = find_fd(fd); 00423 if (file == NULL) { 00424 errno = EBADF; 00425 return -1; 00426 } 00427 return (statcont->listxattr)(statcont, file->fname, list, size); 00428 }
1.4.7