40 lines
1.4 KiB
Diff
40 lines
1.4 KiB
Diff
diff -up vsftpd-2.0.7/postlogin.c.bind_denied vsftpd-2.0.7/postlogin.c
|
|
--- vsftpd-2.0.7/postlogin.c.bind_denied 2008-07-29 21:51:09.000000000 -0400
|
|
+++ vsftpd-2.0.7/postlogin.c 2008-09-08 23:39:28.000000000 -0400
|
|
@@ -574,7 +574,8 @@ handle_pasv(struct vsf_session* p_sess,
|
|
break;
|
|
}
|
|
}
|
|
- if (vsf_sysutil_get_error() == kVSFSysUtilErrADDRINUSE)
|
|
+ if ( (vsf_sysutil_get_error() == kVSFSysUtilErrADDRINUSE) ||
|
|
+ (vsf_sysutil_get_error() == kVSFSysUtilErrEACCES) )
|
|
{
|
|
continue;
|
|
}
|
|
diff -up vsftpd-2.0.7/sysutil.c.bind_denied vsftpd-2.0.7/sysutil.c
|
|
--- vsftpd-2.0.7/sysutil.c.bind_denied 2008-09-08 23:38:10.000000000 -0400
|
|
+++ vsftpd-2.0.7/sysutil.c 2008-09-08 23:38:10.000000000 -0400
|
|
@@ -1561,6 +1561,9 @@ vsf_sysutil_get_error(void)
|
|
case EOPNOTSUPP:
|
|
retval = kVSFSysUtilErrOPNOTSUPP;
|
|
break;
|
|
+ case EACCES:
|
|
+ retval = kVSFSysUtilErrEACCES;
|
|
+ break;
|
|
}
|
|
return retval;
|
|
}
|
|
diff -up vsftpd-2.0.7/sysutil.h.bind_denied vsftpd-2.0.7/sysutil.h
|
|
--- vsftpd-2.0.7/sysutil.h.bind_denied 2008-09-08 23:38:10.000000000 -0400
|
|
+++ vsftpd-2.0.7/sysutil.h 2008-09-08 23:38:10.000000000 -0400
|
|
@@ -16,7 +16,8 @@ enum EVSFSysUtilError
|
|
kVSFSysUtilErrNOSYS,
|
|
kVSFSysUtilErrINTR,
|
|
kVSFSysUtilErrINVAL,
|
|
- kVSFSysUtilErrOPNOTSUPP
|
|
+ kVSFSysUtilErrOPNOTSUPP,
|
|
+ kVSFSysUtilErrEACCES
|
|
};
|
|
enum EVSFSysUtilError vsf_sysutil_get_error(void);
|
|
|