mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merged V3.0 to HEAD
11943: Fix for ETHREEOH-879 & ETHREEOH-783: Multi-valued properties not allowed in Alfresco 3.0 (due to java.lang.UnsupportedOperationException) 11944: Fix for ETHREEOH-865 11947: Build fix for site service unit test failures. This will be reviewed since it works round the issue rather than tackle why runAs is now failing. 11952: ETHREEOH-845, ETHREEOH-871, ETHREEOH-853, ETHREEOH-839 11953: ETHREEOH-483 Unable to upload files [with Flash 10 installed] Fixed to fit into yui 2.6.0 11954: Added missing 'protocolOrder' configuration value. 11956: Fix for ETHREEOH-895 11957: Fix for ETHREEOH-891. 11958: Readded generated source line for RemoteAPI project. 11959: ETHREEOH-483 Unable to upload files [with Flash 10 installed] Missed to add this image 11960: Removed JDK6 specific method. 11962: Fixed missing setup of the share mapper class name when the <class> config tag is used. ALFCOM-2060. 11964: fix for ETHREEOH-266 - restrict length of webapp to 150 chars. 11965: Merged 2.2 to 3.0 11926: Fox for ETHREEOH-725 User doesn't receive email to his box when rule 'Send an Email to specified users' is created 11966: ETHREEOH-872: Editing Email-notify-rules fails w/ ClassCastException 11967: MT - test fixes (post runAs merge) 11968: Changed Windows x64 NetBIOS warning message to be a debug message. ETHREEOH-897. 11971: ETHREEOH-829 Case issue when inserting Document Share links into a discussion using richtext editor 11973: Fix for ETHREEOH-890 - users with apostrophe in their login name can now login to Alfresco Explorer (and Share). git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@12490 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -108,9 +108,6 @@ import org.springframework.context.ApplicationContextAware;
|
||||
import org.springframework.context.ApplicationEvent;
|
||||
import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.context.event.ContextRefreshedEvent;
|
||||
import org.w3c.dom.Element;
|
||||
import org.w3c.dom.Node;
|
||||
import org.w3c.dom.NodeList;
|
||||
|
||||
import net.sf.acegisecurity.AuthenticationManager;
|
||||
|
||||
@@ -123,7 +120,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
|
||||
// Debug logging
|
||||
|
||||
private static final Log logger = LogFactory.getLog("org.alfresco.smb.protocol");
|
||||
protected static final Log logger = LogFactory.getLog("org.alfresco.smb.protocol");
|
||||
|
||||
// Filesystem configuration constants
|
||||
|
||||
@@ -643,7 +640,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
*
|
||||
* @param config Config
|
||||
*/
|
||||
private final void processCIFSServerConfig(Config config)
|
||||
protected void processCIFSServerConfig(Config config)
|
||||
{
|
||||
// If the configuration section is not valid then CIFS is disabled
|
||||
|
||||
@@ -1331,9 +1328,10 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
|
||||
if ( cifsConfig.useWinsockNetBIOS() == true && X64.isWindows64())
|
||||
{
|
||||
// Log a warning
|
||||
// Debug
|
||||
|
||||
logger.warn("Using older Netbios() API code");
|
||||
if ( logger.isDebugEnabled())
|
||||
logger.debug("Using older Netbios() API code");
|
||||
|
||||
// Use the older NetBIOS API code
|
||||
|
||||
@@ -1592,7 +1590,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
*
|
||||
* @param config Config
|
||||
*/
|
||||
private final void processFTPServerConfig(Config config)
|
||||
protected void processFTPServerConfig(Config config)
|
||||
{
|
||||
// If the configuration section is not valid then FTP is disabled
|
||||
|
||||
@@ -1857,7 +1855,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
*
|
||||
* @param config Config
|
||||
*/
|
||||
private final void processNFSServerConfig(Config config)
|
||||
protected void processNFSServerConfig(Config config)
|
||||
{
|
||||
// If the configuration section is not valid then NFS is disabled
|
||||
|
||||
@@ -2076,7 +2074,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
*
|
||||
* @param config Config
|
||||
*/
|
||||
private final void processFilesystemsConfig(Config config)
|
||||
protected void processFilesystemsConfig(Config config)
|
||||
{
|
||||
// Get the top level filesystems configuration element
|
||||
|
||||
@@ -2284,7 +2282,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
*
|
||||
* @param config Config
|
||||
*/
|
||||
private final void processSecurityConfig(Config config)
|
||||
protected void processSecurityConfig(Config config)
|
||||
{
|
||||
// Create the security configuration section
|
||||
|
||||
@@ -2342,6 +2340,8 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
ConfigElement classElem = mapperElem.getChild( "class");
|
||||
if ( classElem == null)
|
||||
throw new InvalidConfigurationException("Share mapper class not specified");
|
||||
|
||||
mapperClass = classElem.getValue();
|
||||
}
|
||||
|
||||
// Initialize the share mapper
|
||||
@@ -2439,7 +2439,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
* @param config Config
|
||||
* @exception InvalidConfigurationException
|
||||
*/
|
||||
private final void processCoreServerConfig(Config config)
|
||||
protected void processCoreServerConfig(Config config)
|
||||
throws InvalidConfigurationException
|
||||
{
|
||||
// Create the core server configuration section
|
||||
@@ -2690,7 +2690,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
* @param secConfig SecurityConfigSection
|
||||
* @param aclsElem ConfigElement
|
||||
*/
|
||||
private final AccessControlList processAccessControlList(SecurityConfigSection secConfig, ConfigElement aclsElem)
|
||||
protected AccessControlList processAccessControlList(SecurityConfigSection secConfig, ConfigElement aclsElem)
|
||||
{
|
||||
|
||||
// Check if there is an access control manager configured
|
||||
@@ -2782,7 +2782,7 @@ public class ServerConfigurationBean extends ServerConfiguration implements Appl
|
||||
* @param deskActionElem ConfigElement
|
||||
* @param fileSys DiskSharedDevice
|
||||
*/
|
||||
private final DesktopActionTable processDesktopActions(ConfigElement deskActionElem, DiskSharedDevice fileSys)
|
||||
protected DesktopActionTable processDesktopActions(ConfigElement deskActionElem, DiskSharedDevice fileSys)
|
||||
{
|
||||
// Get the desktop action configuration elements
|
||||
|
||||
|
@@ -28,6 +28,7 @@ import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Hashtable;
|
||||
import java.util.List;
|
||||
import java.util.StringTokenizer;
|
||||
|
||||
import javax.transaction.Status;
|
||||
import javax.transaction.UserTransaction;
|
||||
@@ -48,6 +49,7 @@ import org.alfresco.jlan.server.auth.ntlm.TargetInfo;
|
||||
import org.alfresco.jlan.server.auth.ntlm.Type1NTLMMessage;
|
||||
import org.alfresco.jlan.server.auth.ntlm.Type2NTLMMessage;
|
||||
import org.alfresco.jlan.server.auth.ntlm.Type3NTLMMessage;
|
||||
import org.alfresco.jlan.server.auth.passthru.AuthSessionFactory;
|
||||
import org.alfresco.jlan.server.auth.passthru.AuthenticateSession;
|
||||
import org.alfresco.jlan.server.auth.passthru.PassthruDetails;
|
||||
import org.alfresco.jlan.server.auth.passthru.PassthruServers;
|
||||
@@ -55,6 +57,7 @@ import org.alfresco.jlan.server.config.InvalidConfigurationException;
|
||||
import org.alfresco.jlan.server.config.ServerConfiguration;
|
||||
import org.alfresco.jlan.server.core.SharedDevice;
|
||||
import org.alfresco.jlan.smb.Capability;
|
||||
import org.alfresco.jlan.smb.Protocol;
|
||||
import org.alfresco.jlan.smb.SMBStatus;
|
||||
import org.alfresco.jlan.smb.dcerpc.UUID;
|
||||
import org.alfresco.jlan.smb.server.SMBServer;
|
||||
@@ -1263,6 +1266,65 @@ public class PassthruCifsAuthenticator extends CifsAuthenticatorBase implements
|
||||
}
|
||||
}
|
||||
|
||||
// Check if a protocol order has been set
|
||||
|
||||
ConfigElement protoOrderElem = params.getChild("ProtocolOrder");
|
||||
|
||||
if ( protoOrderElem != null && protoOrderElem.getValue().length() > 0)
|
||||
{
|
||||
// Parse the protocol order list
|
||||
|
||||
StringTokenizer tokens = new StringTokenizer( protoOrderElem.getValue(), ",");
|
||||
int primaryProto = Protocol.None;
|
||||
int secondaryProto = Protocol.None;
|
||||
|
||||
// There should only be one or two tokens
|
||||
|
||||
if ( tokens.countTokens() > 2)
|
||||
throw new AlfrescoRuntimeException("Invalid protocol order list, " + protoOrderElem.getValue());
|
||||
|
||||
// Get the primary protocol
|
||||
|
||||
if ( tokens.hasMoreTokens())
|
||||
{
|
||||
// Parse the primary protocol
|
||||
|
||||
String primaryStr = tokens.nextToken();
|
||||
|
||||
if ( primaryStr.equalsIgnoreCase( "TCPIP"))
|
||||
primaryProto = Protocol.NativeSMB;
|
||||
else if ( primaryStr.equalsIgnoreCase( "NetBIOS"))
|
||||
primaryProto = Protocol.TCPNetBIOS;
|
||||
else
|
||||
throw new AlfrescoRuntimeException("Invalid protocol type, " + primaryStr);
|
||||
|
||||
// Check if there is a secondary protocol, and validate
|
||||
|
||||
if ( tokens.hasMoreTokens())
|
||||
{
|
||||
// Parse the secondary protocol
|
||||
|
||||
String secondaryStr = tokens.nextToken();
|
||||
|
||||
if ( secondaryStr.equalsIgnoreCase( "TCPIP") && primaryProto != Protocol.NativeSMB)
|
||||
secondaryProto = Protocol.NativeSMB;
|
||||
else if ( secondaryStr.equalsIgnoreCase( "NetBIOS") && primaryProto != Protocol.TCPNetBIOS)
|
||||
secondaryProto = Protocol.TCPNetBIOS;
|
||||
else
|
||||
throw new AlfrescoRuntimeException("Invalid secondary protocol, " + secondaryStr);
|
||||
}
|
||||
}
|
||||
|
||||
// Set the protocol order used for passthru authentication sessions
|
||||
|
||||
AuthSessionFactory.setProtocolOrder( primaryProto, secondaryProto);
|
||||
|
||||
// DEBUG
|
||||
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Protocol order primary=" + Protocol.asString(primaryProto) + ", secondary=" + Protocol.asString(secondaryProto));
|
||||
}
|
||||
|
||||
// Check if we have an authentication server
|
||||
|
||||
if (m_passthruServers.getTotalServerCount() == 0)
|
||||
|
Reference in New Issue
Block a user