Merged V2.1 to HEAD

6636: Temporary hack to fix build.  
   6637: Better handling of binary string bufs, disable link validation when poll interval is <= 0
   6638: Forgotten files for TXT to PDF transformer.
   6639: Fix for AWC-1541
   6641: Fix for WCM-792.
   6642: A little extra PropertyValue support for createNode, too.
   6643: Fix for WCM-791
   6644: Closure of AR-1528: Check concurrency handling of DuplicateChildNodeNameException
   6647: Fix WCM-794
   6648: WCM-656
   6650: Applied user supplied patch to fix AWC-1546 - Cannot mount AVM using CIFS on new alfresco installation.
   6651: Index tidy ups
   6654: Various minor updates for passthru authentication debugging and error handling.
   6657: Fix for WCM-799 (Some items selected for submission were not present)
   6659: Updated installers.
   6660: Partial fix to AWC-1524
   6661: Fix WCM-803
   6664: Including  hibernate-3.2.1.jar in $VIRTUAL_TOMCAT_HOME/server/lib/ 
   6665: adding an automated unit test for output path patterns.
   6668: Fixed to add shale-test-1.0.4.jar to Eclipse classpath (PHH oked)
   6681: Fixes WCM-811 - Lookup.getIndirectionPath() had a bit of a howler in it.
   6684: UncategorizedSQLException with the word 'deadlock' in the message is now cause for retrying a transaction.
   6691: Fix for WCM-813 (lock not removed when expiration date set and no workflow on web project)
   6696: Imporved SSO filters for SiteMinder etc + test filter
   6697: Support for scheduled import
   6699: Fix for the compliation target:  compile-benchmarkframework 
   6701: Fix for 1.6 JVMs (1.5 gets by with lucky ordering)


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6749 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2007-09-11 04:18:53 +00:00
parent f4f0f51a7d
commit a4b4ca69ec
27 changed files with 1110 additions and 205 deletions

View File

@@ -822,6 +822,19 @@ public final class NetBIOSSession implements NetworkSession
* @return NetBIOSNameList
*/
public static NetBIOSNameList FindNamesForAddress(String ipAddr) throws UnknownHostException, SocketException
{
return FindNamesForAddress( ipAddr, 1);
}
/**
* Get the NetBIOS name list for the specified IP address
*
* @param ipAddr String
* @param retryCnt int
* @return NetBIOSNameList
*/
public static NetBIOSNameList FindNamesForAddress(String ipAddr, int retryCnt)
throws UnknownHostException, SocketException
{
// Create a datagram socket
@@ -836,7 +849,7 @@ public final class NetBIOSSession implements NetworkSession
// Set the datagram socket timeout, in milliseconds
m_dgramSock.setSoTimeout(2000);
m_dgramSock.setSoTimeout(5000);
// Create a name lookup NetBIOS packet
@@ -875,43 +888,48 @@ public final class NetBIOSSession implements NetworkSession
try
{
// Send the name query datagram
m_dgramSock.send(dgram);
// Receive a datagram packet
m_dgramSock.receive(rxdgram);
// DEBUG
if (logger.isDebugEnabled() && m_debug)
{
logger.debug("NetBIOS: Rx Datagram");
rxpkt.DumpPacket(false);
}
// Check if this is a valid response datagram
if (rxpkt.isResponse() && rxpkt.getOpcode() == NetBIOSPacket.RESP_QUERY && rxpkt.getAnswerCount() >= 1)
{
// Get the received name list
nameList = rxpkt.getAdapterStatusNameList();
// If the name list is valid update the names with the original address that was connected to
if( nameList != null)
{
for ( int i = 0; i < nameList.numberOfNames(); i++)
{
NetBIOSName nbName = nameList.getName(i);
nbName.addIPAddress(destAddr.getAddress());
}
}
}
// Loop until we get a valid reply or the retry count is zero
while ( retryCnt-- > 0 && nameList == null)
{
// Send the name query datagram
m_dgramSock.send(dgram);
// Receive a datagram packet
m_dgramSock.receive(rxdgram);
rxpkt.setLength( rxdgram.getLength());
// DEBUG
if (logger.isDebugEnabled() && m_debug)
{
logger.debug("NetBIOS: Rx Datagram");
rxpkt.DumpPacket(false);
}
// Check if this is a valid response datagram
if (rxpkt.isResponse() && rxpkt.getOpcode() == NetBIOSPacket.RESP_QUERY && rxpkt.getAnswerCount() >= 1)
{
// Get the received name list
nameList = rxpkt.getAdapterStatusNameList();
// If the name list is valid update the names with the original address that was connected to
if( nameList != null)
{
for ( int i = 0; i < nameList.numberOfNames(); i++)
{
NetBIOSName nbName = nameList.getName(i);
nbName.addIPAddress(destAddr.getAddress());
}
}
}
}
}
catch (java.io.IOException ex)
{