本文整理汇总了Java中jcifs.smb.NtlmChallenge类的典型用法代码示例。如果您正苦于以下问题:Java NtlmChallenge类的具体用法?Java NtlmChallenge怎么用?Java NtlmChallenge使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
NtlmChallenge类属于jcifs.smb包,在下文中一共展示了NtlmChallenge类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getChallengeForDomain
import jcifs.smb.NtlmChallenge; //导入依赖的package包/类
private synchronized NtlmChallenge getChallengeForDomain ( String domain ) throws UnknownHostException, ServletException {
if ( domain == null ) {
throw new ServletException("A domain was not specified");
}
long now = System.currentTimeMillis();
int retry = 1;
do {
if ( this.dcListExpiration < now ) {
Address[] list = getTransportContext().getNameServiceClient().getNbtAllByName(domain, 0x1C, null, null);
this.dcListExpiration = now + this.netbiosCacheTimeout * 1000L;
if ( list != null && list.length > 0 ) {
this.dcList = list;
}
else { /* keep using the old list */
this.dcListExpiration = now + 1000 * 60 * 15; /* 15 min */
log.warn("Failed to retrieve DC list from WINS");
}
}
int max = Math.min(this.dcList.length, this.netbiosLookupRespLimit);
for ( int j = 0; j < max; j++ ) {
int i = dcListCounter++ % max;
if ( this.dcList[ i ] != null ) {
try {
return interrogate(getTransportContext(), this.dcList[ i ]);
}
catch ( SmbException se ) {
log.warn("Failed validate DC: " + this.dcList[ i ], se);
}
this.dcList[ i ] = null;
}
}
/*
* No DCs found, for retieval of list by expiring it and retry.
*/
this.dcListExpiration = 0;
}
while ( retry-- > 0 );
this.dcListExpiration = now + 1000 * 60 * 15; /* 15 min */
throw new UnknownHostException("Failed to negotiate with a suitable domain controller for " + domain);
}
开发者ID:AgNO3,项目名称:jcifs-ng,代码行数:45,代码来源:NtlmHttpFilter.java
注:本文中的jcifs.smb.NtlmChallenge类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论