~ubuntu-branches/ubuntu/maverick/samba/maverick-security

« back to all changes in this revision

Viewing changes to source/libsmb/libsmb_server.c

  • Committer: Bazaar Package Importer
  • Author(s): Steve Langasek
  • Date: 2009-03-03 22:02:23 UTC
  • mfrom: (0.28.1 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090303220223-3bdlm2d9fwx1p1ye
Tags: 2:3.3.1-1ubuntu1
* Merge from Debian unstable (LP: #337094), remaining changes:
  + debian/patches/VERSION.patch:
    - setup SAMBA_VERSION_SUFFIX to Ubuntu.
  + debian/smb.conf:
    - add "(Samba, Ubuntu)" to server string.
    - comment out the default [homes] share, and add a comment about
      "valid users = %S" to show users how to restrict access to
      \\server\username to only username.
    - Set 'usershare allow guests', so that usershare admins are 
      allowed to create public shares in addition to authenticated
      ones.
    - add map to guest = Bad user, maps bad username to guest access. 
  + debian/samba-common.config:
    - Do not change priority to high if dhclient3 is installed.
    - Use priority medium instead of high for the workgroup question.
  + debian/mksambapasswd.awk:
    - Do not add user with UID less than 1000 to smbpasswd.
  + debian/control:
    - Make libwbclient0 replace/conflict with hardy's likewise-open.
    - Don't build against ctdb.
  + debian/rules:
    - enable "native" PIE hardening.
  + Add ufw integration:
    - Created debian/samba.ufw.profile
    - debian/rules, debian/samba.dirs, debian/samba.files: install
      profile
    - debian/control: have samba suggest ufw
* Dropped changes, merged in Debian:
  + debian/libpam-smbpass.pam-config, debian/libpam-smbpass.postinst,
    debian/libpam-smbpass.prerm, debian/libpam-smbpass.files,
    debian/rules:
    - Make libpam-smbpasswd depend on libpam-runtime to allow 
      libpam-smbpasswd for auto-configuration.
  + debian/control:
    - Provide a config block for the new PAM framework to auto-configure
      itself
  + debian/samba.postinst:
    - When populating the new sambashare group, it is not an error
      if the user simply does not exist; test for this case and let
      the install continue instead of aborting.
  + debian/winbind.files:
    - include additional files

Show diffs side-by-side

added added

removed removed

Lines of Context:
238
238
            char **pp_password)
239
239
{
240
240
        SMBCSRV *srv=NULL;
 
241
        char *workgroup = NULL;
241
242
        struct cli_state *c;
242
243
        struct nmb_name called, calling;
243
244
        const char *server_n = server;
359
360
        if (srv) {
360
361
                
361
362
                /* ... then we're done here.  Give 'em what they came for. */
362
 
                return srv;
 
363
                goto done;
363
364
        }
364
365
        
365
366
        /* If we're not asked to connect when a connection doesn't exist... */
598
599
                  server, share, srv));
599
600
        
600
601
        DLIST_ADD(context->internal->servers, srv);
 
602
done:
 
603
        if (!pp_workgroup || !*pp_workgroup || !**pp_workgroup) {
 
604
                workgroup = talloc_strdup(ctx, smbc_getWorkgroup(context));
 
605
        } else {
 
606
                workgroup = *pp_workgroup;
 
607
        }
 
608
        if(!workgroup) {
 
609
                return NULL;
 
610
        }
 
611
        
 
612
        /* set the credentials to make DFS work */
 
613
        smbc_set_credentials_with_fallback(context,
 
614
                                           workgroup,
 
615
                                           *pp_username,
 
616
                                           *pp_password);
 
617
        
601
618
        return srv;
602
619
        
603
620
failed: