Jcifs issue with Fess 12.3 and Samba

(from github.com/freestyle68)
Hello,

crawling via SMB an old linux server (ubuntu 12.04 with samba 2:3.6.25) and Fess 12.3 I cannot index any file, in fact I get always those messages:

2018-11-07 00:51:06,074 [Crawler-20181107004135-1-5] INFO  Crawling URL: smb://192.168.0.100/office/a/files/
2018-11-07 00:51:06,180 [Transport3097] ERROR Signatures are required but the server does not support them
2018-11-07 00:51:06,180 [Crawler-20181107004135-1-2] WARN  Referral failed, trying next
jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/192.168.0.100
	at jcifs.smb.SmbTransportImpl.ensureConnected(SmbTransportImpl.java:669) ~[jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTransportPoolImpl.getSmbTransport(SmbTransportPoolImpl.java:213) ~[jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTransportPoolImpl.getSmbTransport(SmbTransportPoolImpl.java:47) ~[jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTreeConnection.connectHost(SmbTreeConnection.java:560) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTreeConnection.connectHost(SmbTreeConnection.java:484) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTreeConnection.connect(SmbTreeConnection.java:460) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbTreeConnection.connectWrapException(SmbTreeConnection.java:421) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbFile.ensureTreeConnected(SmbFile.java:550) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbPipeHandleImpl.ensureTreeConnected(SmbPipeHandleImpl.java:111) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbPipeHandleImpl.ensureOpen(SmbPipeHandleImpl.java:166) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbPipeHandleImpl.sendrecv(SmbPipeHandleImpl.java:250) [jcifs-2.1.1.jar:?]
	at jcifs.dcerpc.DcerpcPipeHandle.doSendReceiveFragment(DcerpcPipeHandle.java:113) [jcifs-2.1.1.jar:?]
	at jcifs.dcerpc.DcerpcHandle.sendrecv(DcerpcHandle.java:243) [jcifs-2.1.1.jar:?]
	at jcifs.dcerpc.DcerpcHandle.bind(DcerpcHandle.java:216) [jcifs-2.1.1.jar:?]
	at jcifs.dcerpc.DcerpcHandle.sendrecv(DcerpcHandle.java:234) [jcifs-2.1.1.jar:?]
	at jcifs.dcerpc.msrpc.LsaPolicyHandle.<init>(LsaPolicyHandle.java:43) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SIDCacheImpl.resolveSids0(SIDCacheImpl.java:107) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SIDCacheImpl.resolveSids(SIDCacheImpl.java:189) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SID.resolve(SID.java:474) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbFile.getOwnerUser(SmbFile.java:2299) [jcifs-2.1.1.jar:?]
	at jcifs.smb.SmbFile.getOwnerUser(SmbFile.java:2284) [jcifs-2.1.1.jar:?]
	at org.codelibs.fess.crawler.client.smb.SmbClient.getResponseData(SmbClient.java:220) [fess-crawler-2.3.0.jar:?]
	at org.codelibs.fess.crawler.client.smb.SmbClient.processRequest(SmbClient.java:160) [fess-crawler-2.3.0.jar:?]
	at org.codelibs.fess.crawler.client.smb.SmbClient.doHead(SmbClient.java:390) [fess-crawler-2.3.0.jar:?]
	at org.codelibs.fess.crawler.client.AbstractCrawlerClient.execute(AbstractCrawlerClient.java:144) [fess-crawler-2.3.0.jar:?]
	at org.codelibs.fess.crawler.FessCrawlerThread.isContentUpdated(FessCrawlerThread.java:88) [classes/:?]
	at org.codelibs.fess.crawler.CrawlerThread.run(CrawlerThread.java:155) [fess-crawler-2.3.0.jar:?]
	at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: jcifs.util.transport.TransportException: jcifs.smb.SmbException: This client is not compatible with the server.
	at jcifs.util.transport.Transport.run(Transport.java:752) ~[jcifs-2.1.1.jar:?]
	... 1 more
Caused by: jcifs.smb.SmbException: This client is not compatible with the server.
	at jcifs.smb.SmbTransportImpl.doConnect(SmbTransportImpl.java:709) ~[jcifs-2.1.1.jar:?]
	at jcifs.util.transport.Transport.run(Transport.java:725) ~[jcifs-2.1.1.jar:?]
	... 1 more

while with Fess 11.4 I have no problem.

There is a workaround for this?

Thank you

(from github.com/freestyle68)
as suggested by
https://github.com/AgNO3/jcifs-ng/issues/40
and
https://github.com/AgNO3/jcifs-ng/issues/57 ,

tried with

# JVM options
jvm.crawler.options=\
.............................
-Djcifs.smb.client.signingPreferred=false\n\
-Djcifs.smb.client.signingEnforced=false\n\
-Djcifs.smb.client.ipcSigningEnforced=false\n\

on fess_config.properties but without success.

(from github.com/freestyle68)
It seems fess_config.properties is not picking the line

-Djcifs.smb.client.signingEnforced=false\n\

because instead changing from true to false this line

and rebuilding jcifs solved the issue.

There is another way to set

jcifs.smb.client.signingEnforced=false

without rebuilding? For example also putting this line on Config Parameters of the specific crawler?

(from github.com/marevol)
I checked it on debug mode, but it works.
For PropertyConfiguration.java#L52, the setting is -Djcifs.smb.client.ipcSigningEnforced=false\n\, not -Djcifs.smb.client.signingEnforced=false\n\.

(from github.com/freestyle68)
Yes, I confirm, it was a my mistake.

Thank you very much.