Re: gnome-vfs and smb:// URI's - am I doing something wrong?



On Tue, 1 Apr 2003, Paul Duran wrote:

> Hi Alex,
> 
> I've recompiled with the debugging flags set as you suggested and I have
> attached the debug logs, with hope that you can see something that I cannot
> :-)
> 
> I have 4 logs:
> Test 1: running my vfs-test with a URI of smb://pauld:mypassword localhost
> Test 2: running my vfs-test with a URI of
> smb://pauld:mypassword localhost/test
> Test 3: running nautilus with a URI of smb://pauld:mypassword localhost
> Test 4: running nautilus with a URI of smb://pauld:mypassword localhost/test
> 
> The nautilus logs are successful, whereas my program is unsuccessful.
> 
> [This is unrelated], but is it a bug/feature/known issue that nautilus
> doesn't
> even bother with the username/password passed through the address bar for
> samba URIs?

It's not a known issue. It seems from the logs that it does indeed pass 
pauld/mypassword to the server.

> It opens up a dialog box asking for username/password, even if it is
> supplied in the URI.

This is probably the reason it works in nautilus. Nautilus handles 
authentication callbacks, which your app doesn't. In this case it 
shouldn't have to though.
 
> =================== TEST 1 =======================
> ======= running my vfs-test with a URI of smb://pauld:mypassword localhost
> 
> pauld titan cs $ ./vfs-test smb://pauld:mypassword localhost
> URI parts: host: localhost, port: 0, scheme: smb, user: pauld, pass:
> mypassword, path:
> tostring: smb://pauld:mypassword localhost
> do_open_directory() smb://pauld:mypassword localhost
> lookup_uri (uri: smb://pauld:mypassword localhost)
> lookup_uri (user: pauld password: mypassword host_name: localhost
> share_name: (null) path: (null))
> get_file_type (), first smb_host_connection () said: Host not found
> smb_server_connection_new_from_ip (ip: 192.168.1.1, share: IPC$, user:
> (null), password: (null))
> smb_server_connection_new_from_ip: caller.name: TITAN, called.name: TITAN
> Trying to setup session as user pauld
> Failed login as pauld, trying anon
> smb_server_connection_new (server: localhost, share: IPC$, user: pauld,
> password: mypassword)
> smb_server_connection_new_from_ip (ip: 127.0.0.1, share: IPC$, user: pauld,
> password: mypassword)
> smb_server_connection_new_from_ip: caller.name: TITAN, called.name:
> LOCALHOST
> Trying to setup session as user pauld
> get_file_type (), second smb_host_connection () said: No error
> smb_connection_free: freeing connection localhost -> IPC$
> smb_server_connection_new (server: localhost, share: IPC$, user: pauld,
> password: mypassword)
> smb_server_connection_new_from_ip (ip: 127.0.0.1, share: IPC$, user: pauld,
> password: mypassword)
> smb_server_connection_new_from_ip: caller.name: TITAN, called.name:
> LOCALHOST
> Trying to setup session as user pauld

I'm not sure what's happening here. Clearly 
smb_server_connection_new_from_ip() fails, and then we return to 
smb_share_connection_new() which calls 
smb_server_connection_new_ask_password() which returns 
GNOME_VFS_ERROR_ACCESS_DENIED since there is no authentication callback 
registered.

But why and how did smb_server_connection_new_from_ip() fail? 
If cli_session_setup() failed it should have printed:

 DEBUG_SMB2(("Failed login as %s, trying anon\n", user_copy));

and if cli_send_tconX() failed it should have printed:

 g_warning ("couldn't send tconX: res: %s", cli_errstr (cli));

and there is no other way to fail...

> smb_connection_free: freeing connection localhost -> IPC$
> RESULT: Access denied




-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
                   alexl redhat com    alla lysator liu se 
He's a notorious sweet-toothed romance novelist with a mysterious suitcase 
handcuffed to his arm. She's a radical winged fairy princess in the witness 
protection program. They fight crime! 





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]