[Samba] Strange automount problem with samba & LDAP
Yusuf TAMBAG
yusuf at ceng.metu.edu.tr
Tue Dec 13 09:17:41 GMT 2005
Hi all,
Finally I've found that in auth/auth.c, 'check_ntlm_password' function
stat works as expected, and I added some code to get user's home
directory from LDAP and do a stat to that directory. Now everything
works as expected. Is it possible that samba changes system's default
encoding in somewhere, because system call 'system("ls -l
/home/stf4/yusuf")' also did not worked.
-regards
Yusuf TAMBAG wrote:
> Following code segment pasted from vfstest works when I connect
> anonymously (or root) does the automount, but when I connect as a user
> it does not work.
> It wold be nice if someone could explain the difference between
> anonymous login or root login and normal login, where they don't share
> the same code. It seems to me that automount can not get right
> information when loging as a user to samba (may be a extra null
> character appended). any help will be appreciated.
>
> -regards.
> vfs.conn = conn_new();
> string_set(&vfs.conn->user,"vfstest");
> for (i=0; i < 1024; i++)
> vfs.files[i] = NULL;
> smbd_vfs_init(vfs.conn);
> test=SMB_VFS_STAT(vfs.conn, "/home/stf4/yusuf", &mystatus);
> if (test == -1) {
> DEBUG(0,("make_connection_snum: stat unsuccessfull!\n"));
> }
> else {
> DEBUG(0,("make_connection_snum: stat successfull.\n"));
> if (S_ISDIR(st.st_mode))
> DEBUG(0,("make_connection_snum: Directory!!\n"));
> else
> DEBUG(0,("make_connection_snum: Not
> Directory!!\n"));
> }
> free(vfs.conn);
>
>
> Yusuf TAMBAG wrote:
>> Hi all,
>>
>> I've installed samba-3.0.21rc2 on a solaris 10 machine (latest
>> patches applied) by compiling from source:
>> #uname -a
>> SunOS newton 5.10 Generic_118844-20 i86pc i386 i86pc
>> User's home is mounted using automount without any problem. But when
>> I try to mount using samba, it can not access the users home
>> directory when it 's share is not mounted and gives following error:
>> [2005/12/05 15:49:30, 0] smbd/service.c:(690)
>> '/home/stf4/yusuf' does not exist or permission denied when
>> connecting to [yusuf] Error was No such file or directory
>> I also get following message in "/var/adm/messages" when I try to
>> mount a user's samba share.
>>
>> Dec 5 15:49:30 newton automountd[18951]: [ID 293258 daemon.warning]
>> libsldap: Status: 7 Mesg: Session error no available conn.
>> Dec 5 15:49:30 newton last message repeated 11 times
>>
>> Also following code segment I added to smbd/service.c does not work
>> and prints failure for both cases:
>> code=stat(conn->connectpath,mystatus);
>> if(code)
>> DEBUG(0,("stat to (%s) failed!\n",conn->connectpath));
>> else
>> DEBUG(0,("stat to (%s) suceeded.\n",conn->connectpath));
>> code=S_ISDIR(mystatus->st_mode);
>> if(!code)
>> DEBUG(0,("S_ISDIR to (%s) failed!\n",conn->connectpath));
>> else
>> DEBUG(0,("S_ISDIR to (%s)
>> suceeded.\n",conn->connectpath));
>>
>> The same code runs without any problem alone (mounts the user's share
>> if not mounted and returns success) and users can login and see their
>> home directories without any problem.
>>
>> Is samba using something else to access the filesystem other than the
>> system calls ? How can I make it to access using system calls or how
>> can I resolv the problem ?
>>
>> -regards.
More information about the samba
mailing list