[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/kio/kio
From:       Rodrigo Belem <rclbelem () gmail ! com>
Date:       2011-01-26 1:29:46
Message-ID: 20110126012946.C8B4CAC8BA () svn ! kde ! org
[Download RAW message or body]

SVN commit 1217145 by belem:

Fix net usershare acl parser, missing include and share verification.

 M  +4 -2      ksambashare.cpp  
 M  +1 -0      ksambasharedata.h  


--- trunk/KDE/kdelibs/kio/kio/ksambashare.cpp #1217144:1217145
@@ -257,7 +257,7 @@
 
 KSambaShareData::UserShareError KSambaSharePrivate::isAclValid(const QString &acl) const
 {
-    const QRegExp aclRx("((?:(\\w\\s)+\\|)(\\w\\s)+):([fFrRd])(?:,|)");
+    const QRegExp aclRx("(?:(?:(\\w+\\s*)\\\\|)(\\w+\\s*):([fFrRd]{1})(?:,|))+");
     // TODO: check if user is a valid smb user
     return aclRx.exactMatch(acl) ? KSambaShareData::UserShareAclOk
            : KSambaShareData::UserShareAclInvalid;
@@ -286,12 +286,14 @@
     QByteArray stdErr;
 
     if (data.contains(shareData.name())) {
+        if (data.value(shareData.name()).path() != shareData.path()) {
         return KSambaShareData::UserShareNameInUse;
     }
-
+    } else {
     // It needs to be added here, otherwise another instance of KSambaShareDataPrivate
     // will be created and added to data.
     data.insert(shareData.name(), shareData);
+    }
 
     QString guestok = QString("guest_ok=%1").arg(
                           (shareData.guestPermission() == KSambaShareData::GuestsNotAllowed)
--- trunk/KDE/kdelibs/kio/kio/ksambasharedata.h #1217144:1217145
@@ -22,6 +22,7 @@
 #define ksambasharedata_h
 
 #include <QtCore/QExplicitlySharedDataPointer>
+#include <kio/kio_export.h>
 
 class QString;
 class KSambaShare;
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic