[PATCH] cifs: Fix mapping of EMLINK case
Signed-off-by: Steve French (sfrench@us.ibm.com) Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
cd63499cbe
commit
11aa0149d0
@ -1,3 +1,7 @@
|
|||||||
|
Version 1.34
|
||||||
|
------------
|
||||||
|
Fix error mapping of the TOO_MANY_LINKS (hardlinks) case.
|
||||||
|
|
||||||
Version 1.33
|
Version 1.33
|
||||||
------------
|
------------
|
||||||
Fix caching problem, in which readdir of directory containing a file
|
Fix caching problem, in which readdir of directory containing a file
|
||||||
|
@ -96,5 +96,5 @@ extern ssize_t cifs_getxattr(struct dentry *, const char *, void *, size_t);
|
|||||||
extern ssize_t cifs_listxattr(struct dentry *, char *, size_t);
|
extern ssize_t cifs_listxattr(struct dentry *, char *, size_t);
|
||||||
extern int cifs_ioctl (struct inode * inode, struct file * filep,
|
extern int cifs_ioctl (struct inode * inode, struct file * filep,
|
||||||
unsigned int command, unsigned long arg);
|
unsigned int command, unsigned long arg);
|
||||||
#define CIFS_VERSION "1.33"
|
#define CIFS_VERSION "1.34"
|
||||||
#endif /* _CIFSFS_H */
|
#endif /* _CIFSFS_H */
|
||||||
|
@ -78,6 +78,7 @@ static const struct smb_to_posix_error mapping_table_ERRDOS[] = {
|
|||||||
{ErrQuota, -EDQUOT},
|
{ErrQuota, -EDQUOT},
|
||||||
{ErrNotALink, -ENOLINK},
|
{ErrNotALink, -ENOLINK},
|
||||||
{ERRnetlogonNotStarted,-ENOPROTOOPT},
|
{ERRnetlogonNotStarted,-ENOPROTOOPT},
|
||||||
|
{ErrTooManyLinks,-EMLINK},
|
||||||
{0, 0}
|
{0, 0}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -742,7 +743,7 @@ static const struct {
|
|||||||
ERRDOS, 182, NT_STATUS_DRIVER_ORDINAL_NOT_FOUND}, {
|
ERRDOS, 182, NT_STATUS_DRIVER_ORDINAL_NOT_FOUND}, {
|
||||||
ERRDOS, 127, NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND}, {
|
ERRDOS, 127, NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND}, {
|
||||||
ERRDOS, 288, NT_STATUS_RESOURCE_NOT_OWNED}, {
|
ERRDOS, 288, NT_STATUS_RESOURCE_NOT_OWNED}, {
|
||||||
ERRHRD, ERRgeneral, NT_STATUS_TOO_MANY_LINKS}, {
|
ERRDOS, ErrTooManyLinks, NT_STATUS_TOO_MANY_LINKS}, {
|
||||||
ERRHRD, ERRgeneral, NT_STATUS_QUOTA_LIST_INCONSISTENT}, {
|
ERRHRD, ERRgeneral, NT_STATUS_QUOTA_LIST_INCONSISTENT}, {
|
||||||
ERRHRD, ERRgeneral, NT_STATUS_FILE_IS_OFFLINE}, {
|
ERRHRD, ERRgeneral, NT_STATUS_FILE_IS_OFFLINE}, {
|
||||||
ERRDOS, 21, 0xc000026e}, {
|
ERRDOS, 21, 0xc000026e}, {
|
||||||
|
@ -107,6 +107,10 @@
|
|||||||
#define ErrNotALink 0x201 /* A link operation was performed on a
|
#define ErrNotALink 0x201 /* A link operation was performed on a
|
||||||
pathname that was not a link. */
|
pathname that was not a link. */
|
||||||
|
|
||||||
|
/* Below errors are used internally (do not come over the wire) for passthrough
|
||||||
|
from STATUS codes to POSIX only */
|
||||||
|
#define ErrTooManyLinks 0xFFFE
|
||||||
|
|
||||||
/* Following error codes may be generated with the ERRSRV error class.*/
|
/* Following error codes may be generated with the ERRSRV error class.*/
|
||||||
|
|
||||||
#define ERRerror 1 /* Non-specific error code. It is
|
#define ERRerror 1 /* Non-specific error code. It is
|
||||||
|
Loading…
x
Reference in New Issue
Block a user