[jcifs] jcifs-1.2.12 and DFS
Michael B Allen
mba2000 at ioplex.com
Mon Jan 8 01:20:24 GMT 2007
James,
Did you try 1.2.13b2? That has some DFS fixes (one significant one
that I think covers the index out of bounds exception). Everyone else
(e.g. Thomas) is welcome to try it as well. It's in the download area.
Mike
On Sun, 7 Jan 2007 19:00:44 -0600
"James Maupin" <james.maupin at metacarta.com> wrote:
> Michael and others,
>
> jcifs-1.2.12
>
> -Djcifs.util.loglevel=3
>
> DFS test environment
>
> 2 machines:
>
> testserver.testdomain.local
> testserver02.testdomain.local
>
> Smb/Cifs share is:
>
> \\testserver.testdomain.local\Current Test Folder\
>
> DFS root is:
>
> \\testserver.testdomain.local\Current Test Folder\DFS\
>
> DFS root points to:
>
> \\testserver02.testdomain.local\skyrockets\
>
> Some tests: Note: ListFiles is /examples/ListFiles.java modified with
> length().
>
> titan:/home/metacarta/sdc# ./run ListFiles
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/"
> doFindFirstNext: \DFS\
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> in doFindFirst: resp is:
> Trans2FindNext2Response[command=SMB_COM_TRANSACTION2,received=false,errorCod
> e=0,flags=0x00
> 98,flags2=0xD003,signSeq=0,tid=2048,pid=40574,uid=2048,mid=3,wordCount=10,by
> teCount=2697,t
> otalParameterCount=10,totalDataCount=6984,parameterCount=0,parameterOffset=5
> 6,parameterDis
> placement=10,dataCount=2696,dataOffset=56,dataDisplacement=4288,setupCount=0
> ,pad=0,pad1=1,
> sid=2048,searchCount=57,isEndOfSearch=true,eaErrorOffset=0,lastNameOffset=68
> 72,lastName=Th umbs.db]
> 021303 MGS Presentation.ppt, length is: 1797632
> 040419AcquisitionPerformance.ppt, length is: 832512
> < file names removed for brevity >
> 190/, length is: 0
> 192/, length is: 0
> Thumbs.db, length is: 5632
>
> 55 files in 6171ms
>
> titan:/home/metacarta/sdc# ./run ListFiles
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/192/"
> doFindFirstNext: \DFS\192\
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> in doFindFirst: resp is:
> Trans2FindNext2Response[command=SMB_COM_TRANSACTION2,received=false,errorCod
> e=0,flags=0x00
> 98,flags2=0xD003,signSeq=0,tid=2048,pid=45535,uid=2048,mid=3,wordCount=10,by
> teCount=113,to
> talParameterCount=10,totalDataCount=100,parameterCount=10,parameterOffset=56
> ,parameterDisp
> lacement=0,dataCount=100,dataOffset=68,dataDisplacement=0,setupCount=0,pad=1
> ,pad1=2,sid=20
> 48,searchCount=1,isEndOfSearch=true,eaErrorOffset=0,lastNameOffset=0,lastNam
> e=192]
> 192/, length is: 0
>
> 1 files in 6160ms
>
> << NOTE: /DFS/192/192/ does not exist >>
>
> titan:/home/metacarta/sdc# ./run ListFiles
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/192/192/"
> doFindFirstNext: \DFS\192\192\
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> in doFindFirst: resp is:
> Trans2FindNext2Response[command=SMB_COM_TRANSACTION2,received=false,errorCod
> e=0,flags=0x00
> 98,flags2=0xD003,signSeq=0,tid=2048,pid=33887,uid=2048,mid=3,wordCount=10,by
> teCount=265,to
> talParameterCount=10,totalDataCount=252,parameterCount=10,parameterOffset=56
> ,parameterDisp
> lacement=0,dataCount=252,dataOffset=68,dataDisplacement=0,setupCount=0,pad=1
> ,pad1=2,sid=20
> 48,searchCount=2,isEndOfSearch=true,eaErrorOffset=0,lastNameOffset=124,lastN
> ame=192noticep .html]
> 192news.html, length is: 10952
> 192noticep.html, length is: 13717
>
> 2 files in 6164ms
>
> --------------------------------------------
>
> GetDfsPath.java is:
>
> SmbFile f = new SmbFile( argv[0] );
> System.out.println( "The dfs path for \"" + f.getName() + "\" is " +
> f.
> getDfsPath() );
>
> titan:/home/metacarta/sdc# ./run GetDfsPath
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/"
> queryPath: \DFS
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String
> index out of range: -3
> at java.lang.String.substring(String.java:1444)
> at java.lang.String.substring(String.java:1411)
> at jcifs.smb.SmbFile.getDfsUncPath0(SmbFile.java:1375)
> at jcifs.smb.SmbFile.getDfsPath(SmbFile.java:1396)
> at GetDfsPath.main(GetDfsPath.java:8)
>
> titan:/home/metacarta/sdc# ./run GetDfsPath
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/192/"
> queryPath: \DFS\192
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> The dfs path for "192/" is smb://Testserver02/skyrockets/
>
>
> titan:/home/metacarta/sdc# ./run GetDfsPath
> "smb://Administrator:apassword@testserver.testdomain.local/Current Test
> Folder/DFS/192/192/"
> queryPath: \DFS\192\192
> DfsReferral[path=\DFS,node=\Testserver02\skyrockets,server=Testserver02,shar
> e=skyrockets,n odepath=,resolveHashes=false]
> The dfs path for "192/" is smb://Testserver02/skyrockets/192
>
> < NOTE: /DFS/192/192/ does not exist >>
>
> Any ideas?
>
> regards,
> James
>
> -------------------------------------
> James Maupin
> Business Development Engineer, Energy
>
> MetaCarta, Inc. ( www<dot>metacarta<dot>com )
> 1155 Dairy Ashford
> Suite 201
> Houston, TX 77079
>
> Tel: (832) 300-8800 USA
> Mob: (832) 746-6802 USA
> james<dot>maupin<at>metacarta<dot>com
>
--
Michael B Allen
PHP Active Directory SSO
http://www.ioplex.com/
More information about the jcifs
mailing list