Changeset 569


Ignore:
Timestamp:
Mar 30, 2011, 11:41:45 AM (14 years ago)
Author:
Herwig Bauernfeind
Message:

GUI-Tools: SMBUSERS: master.passwd password support

Location:
branches/guitools-1.0
Files:
1 deleted
13 edited

Legend:

Unmodified
Added
Removed
  • branches/guitools-1.0/install/changes

    r451 r569  
     1Version 1.x.x xx-xx-2011
     2                         *Changed: Internal names of objects
    13Version 1.0.0 13-03-2010
    24                         +Added: Use a more wizard-like style instead of
  • branches/guitools-1.0/install/sscc.vrp

    r490 r569  
    66RunDirectory: E:\Dev\REXX\VXREXX\Projects\Samba\install
    77VRXWindow: __VREMainWindow,1,1987,5059,891,7263
    8 VRXWindow: __VRESectionListWindow,1,2819,12671,8974,4890
    9 VRXWindow: __VREToolsWindow,1,2674,4481,6483,1659
     8VRXWindow: __VRESectionListWindow,1,2048,9877,8974,4890
     9VRXWindow: __VREToolsWindow,1,2674,4481,6480,1665
    1010VRXWindow: __VREWindListWindow,1,193,14406,2650,3150
    1111UserFile: 1
    1212UserWindow: Main,1
    13 UserWindow: GB_Global_1,1
    14 UserWindow: Installer,1
    15 UserWindow: RemoveConfig,1
  • branches/guitools-1.0/install/sscc.vrx

    r490 r569  
    320320    CALL NLVSetText 'PB_Reload',        'Caption',   11
    321321    CALL NLVSetText 'PB_Reload',        'Hinttext', 111
    322     CALL NLVSetText 'PB_Create',        'Caption',   12
    323     CALL NLVSetText 'PB_Create',        'Hinttext', 112
     322    CALL NLVSetText 'PB_Save',        'Caption',   12
     323    CALL NLVSetText 'PB_Save',        'Hinttext', 112
    324324    CALL NLVSetText 'PB_Undo',          'Caption',    9
    325325    CALL NLVSetText 'PB_Undo',          'Hinttext', 109
     
    938938    ValueChanged = 1
    939939    if pos(VRGet(VRInfo("OBject"),"Name"), ChangeList) = 0 then Changelist = ChangeList' 'VRGet(VRInfo("OBject"),"Name")
    940     ok = VRSet("PB_Create", "Enabled", 1)
     940    ok = VRSet("PB_Save", "Enabled", 1)
    941941    say "  ValueChanged = "ValueChanged
    942942    say Changelist
     
    988988    do until lines(src) = 0
    989989        smbline = linein(src)
     990        if pos("idmap uid",smbline) > 0 then iterate
     991        if pos("idmap gid",smbline) > 0 then iterate
    990992        if pos("winbind separator",smbline) > 0 then iterate
     993        if pos("copy ",smbline) > 0 then iterate
    991994        call lineout trg, smbline
    992995        lct = lct + 1
     
    23422345    MButton.bTop   = VRGet("GB_SmbConfTree","height")+FWidth*2
    23432346    MButton.bLeft  = VRGet("GB_Shares","Left")
    2344     MButton.bWidth = VRGet("PB_Create","Width")
     2347    MButton.bWidth = VRGet("PB_Save","Width")
    23452348
    23462349    if MButton.bTop < 1300 & MButton.bLeft < 1300 then do
     
    23552358    ok = VRSet("PB_Reload", "Width",  MButton.bWidth)
    23562359
    2357     ok = VRSet("PB_Create", "Top",    MButton.bTop)
    2358     ok = VRSet("PB_Create", "Left",   MButton.bLeft+1*FWidth+MButton.bWidth)
     2360    ok = VRSet("PB_Save", "Top",    MButton.bTop)
     2361    ok = VRSet("PB_Save", "Left",   MButton.bLeft+1*FWidth+MButton.bWidth)
    23592362    ok = VRSet("PB_Reload", "Width",  MButton.bWidth)
    23602363
     
    25742577Menu_Options_SimpleMode_Click:
    25752578    say 'SimpleMode_Click started'
     2579
     2580    /* Workaround for testparm bugs */
     2581    say 'VRCopyFile('smbconf', 'TempDir'smb.conf )'
     2582    ok = VRCopyFile( smbconf, TempDir'smb.conf')
     2583    call _SmbConfCommitChanges
     2584
    25762585    say samba.!testparmexe' -s 1>'TempDir'smb.conf 2>'TempDir'sscc.testparm'
    25772586    address cmd samba.!testparmexe' -s 1>'TempDir'smb.conf 2>'TempDir'sscc.testparm'
     
    27172726*/
    27182727PB_Cancel_Click:
    2719     call PB_Create_Click
     2728    call PB_Save_Click
    27202729    call Quit
    2721 return
    2722 
    2723 /*:VRX         PB_Create_Click
    2724 */
    2725 PB_Create_Click:
    2726     if ValueChanged then do
    2727         if CurSection <> "" then do
    2728             call _SaveChanges
    2729             ok = VRSet("PB_Create", "Enabled", 0)
    2730             call CN_smbconf_Click
    2731         end
    2732     end
    27332730return
    27342731
     
    28152812*/
    28162813PB_Reload_Click:
    2817     call PB_Create_Click   
     2814    call PB_Save_Click   
    28182815    call beep 960, 1
    28192816    address CMD samba.!smbcmd' reload'
     
    28492846return
    28502847
     2848/*:VRX         PB_Save_Click
     2849*/
     2850PB_Save_Click:
     2851    if ValueChanged then do
     2852        if CurSection <> "" then do
     2853            call _SaveChanges
     2854            ok = VRSet("PB_Save", "Enabled", 0)
     2855            call CN_smbconf_Click
     2856        end
     2857    end
     2858return
     2859
    28512860/*:VRX         PB_Undo_Click
    28522861*/
     
    29082917       VRGet("Main","WindowState") = "Minimized" then ok = VRMethod("Main", "Restore")
    29092918
    2910 /*  if samba.!testparmexe <> "" then do
     2919    if samba.!testparmexe <> "" then do
    29112920        address cmd samba.!testparmexe' -s 1>'TempDir'smb.conf 2>'TempDir'sscc.testparm'
    29122921        call _SmbConfCommitChanges
    2913     end */
     2922    end
    29142923
    29152924    call _INIWrite
     
    30033012    say "TM_Value_Trigger started"
    30043013    ValueChanged = 0
    3005     ok = VRSet("PB_Create", "Enabled", 0)
     3014    ok = VRSet("PB_Save", "Enabled", 0)
    30063015    ChangeList = ""
    30073016    ok = VRSet("TM_Value", "Enabled", 0)
  • branches/guitools-1.0/smbusers/changes

    r490 r569  
     1Version 0.9.10 xx-xx-2011
     2                         +Added: Support master.passwd field using rxcrypt.
     3                         !Fixed: Editing a master.passwd field was not written
     4                                 back under certain circumstances
    15Version 0.9.9 01-05-2010
    26                         !Fixed: Minor buglet.
  • branches/guitools-1.0/smbusers/smbusers.VRP

    r490 r569  
    66RunDirectory: U:\Develop\Samba\guitools-1.0\smbusers
    77VRXWindow: __VREMainWindow,1,2180,3710,891,8000
    8 VRXWindow: __VRESectionListWindow,1,2951,9299,8949,5167
    9 VRXWindow: __VREToolsWindow,1,2457,1012,6489,1659
     8VRXWindow: __VRESectionListWindow,1,2481,10166,8949,5167
     9VRXWindow: __VREToolsWindow,1,2457,1012,6489,1667
    1010VRXWindow: __VREWindListWindow,1,446,11130,2650,3150
    1111UserFile: 1
    1212UserWindow: Main,1
    13 UserWindow: About,1
  • branches/guitools-1.0/smbusers/smbusers.VRX

    r451 r569  
    375375*/
    376376_GroupRecWriteBackToStems:
     377    IF options.!debug == 1 THEN say '_GroupRecWriteBackToStems() started'
    377378    Cur = VRMethod("CN_Groups","GetFieldData", GRH, GNrFH)
    378379    Groupname.Cur = VRMethod("CN_Groups","GetFieldData", GRH, GroupnameFH)
     
    380381    GUsers.Cur    = VRMethod("CN_Groups","GetFieldData", GRH, GusersFH)
    381382    if Gusers.Cur = "," then Gusers.Cur = ""
     383    IF options.!debug == 1 THEN say '_GroupRecWriteBackToStems() done'
    382384return
    383385
     
    392394    call lineout newgroup, '# groupname:password:GID:user[,user,...,]'
    393395    do I = 1 to groupname.0
    394         say "GUsers."I"="Gusers.I
     396        /* say "GUsers."I"="Gusers.I */
    395397        if settings.!FixErrors then do
    396398            if Gusers.I = "," then Gusers.I = ""
     
    534536    if settings.!SyncPrimGID = "" then settings.!SyncPrimGID = 0
    535537
     538    settings.!WriteMasterPwd = VRGetIni( "Settings", "WriteMasterPwd", OurINI)
     539    if settings.!WriteMasterPwd = "" then settings.!WriteMasterPwd = 0
     540
    536541    options.!debug = VRGetIni( "Options", "Debug", OurINI)
    537542    if options.!debug = "" then options.!debug = 0
     
    565570    ok = VRSetIni( "Settings", "SyncFullName",  settings.!SyncFullName,  OurINI, 'NoClose' )
    566571    ok = VRSetIni( "Settings", "SyncPrimGID" ,  settings.!SyncPrimGID ,  OurINI, 'NoClose' )
     572    ok = VRSetIni( "Settings", "WriteMasterPwd",settings.!WriteMasterPwd,OurINI, 'NoClose' )
     573
    567574    ok = VRSetIni( "Options",  "Debug",         options.!debug,          OurINI, 'NoClose' )     
    568575
     
    845852    CALL NLVSetText 'CB_SyncFullName', 'Caption', 26
    846853    CALL NLVSetText 'CB_SyncPrimGID',  'Caption', 27
    847 
     854    CALL NLVSetText 'CB_WriteMasterPwd','Caption', 190
    848855   
    849856return
     
    915922    do until lines(samba.!error) = 0
    916923        PolLine = linein(samba.!error)
    917 say polline
     924        /* say polline */
    918925        select
    919926            when pos(":",PolLine) > 0 then iterate
     
    16171624*/
    16181625_UserRecWriteBackToStems:
    1619     if \VRIsValidObject( RH )  then return
    1620     Cur = VRMethod("CN_Users","GetFieldData", RH, NrFH)
    1621     Username.Cur = VRMethod("CN_Users","GetFieldData", RH, UsernameFH)
    1622     UID.Cur      = VRMethod("CN_Users","GetFieldData", RH, UIDFH)
    1623     GID.Cur      = VRMethod("CN_Users","GetFieldData", RH, GIDFH)
    1624     GECOS.Cur    = VRMethod("CN_Users","GetFieldData", RH, GECOSFH)
    1625     Home.Cur     = _PathStrkLIBC(VRMethod("CN_Users","GetFieldData", RH, HomeFH))
    1626     Shell.Cur    = VRMethod("CN_Users","GetFieldData", RH, ShellFH)
    1627     MapTo.Cur    = VRMethod("CN_Users","GetFieldData", RH, MapToFH)
    1628 
    1629     if Settings.!SyncFullName = 1 & flags.Cur <> "" then do
    1630         call PB_Save_Click
    1631         say samba.!pdbeditexe' --user='Username.Cur' --modify --fullname="'GECOS.Cur'" 'DebugLevel' 2>'samba.!error
    1632         address cmd samba.!pdbeditexe' --user='Username.Cur' --modify --fullname="'GECOS.Cur'" 'DebugLevel' 2>'samba.!error
    1633         if RC <> 0 then call _SambaShowError /* ; else call _SambaShowMsg */
    1634     end
    1635     /* These are not editable/visible xpwFH, password.i,xlcFH,LoginClass.I,xcpwFH, pwchange.I,xDeactFH, deact.I, Status.I ) */
    1636 
    1637     /* smbpasswd fields */
    1638     /* we do not allow editing these
    1639        FLagsFH, flags.I, LMHashFH, LMHash.I,NTHashFH, NTHash.I, LCTFH, LCT.I)
    1640      */
     1626    IF options.!debug == 1 THEN say '_UserRecWriteBackToStems() started'
     1627   
     1628    if VRMethod( "CN_Users", "ValidateRecord", RH ) then do
     1629        Cur = VRMethod("CN_Users","GetFieldData", RH, NrFH)
     1630        Username.Cur = VRMethod("CN_Users","GetFieldData", RH, UsernameFH)
     1631        UID.Cur      = VRMethod("CN_Users","GetFieldData", RH, UIDFH)
     1632        GID.Cur      = VRMethod("CN_Users","GetFieldData", RH, GIDFH)
     1633        GECOS.Cur    = VRMethod("CN_Users","GetFieldData", RH, GECOSFH)
     1634        Home.Cur     = _PathStrkLIBC(VRMethod("CN_Users","GetFieldData", RH, HomeFH))
     1635        Shell.Cur    = VRMethod("CN_Users","GetFieldData", RH, ShellFH)
     1636        MapTo.Cur    = VRMethod("CN_Users","GetFieldData", RH, MapToFH)
     1637
     1638        if Settings.!SyncFullName = 1 & flags.Cur <> "" then do
     1639            say "  Sync is enabled, therefore we must save now!"
     1640            call PB_Save_Click
     1641            say samba.!pdbeditexe' --user='Username.Cur' --modify --fullname="'GECOS.Cur'" 'DebugLevel' 1>NUL 2>'samba.!error
     1642            address cmd samba.!pdbeditexe' --user='Username.Cur' --modify --fullname="'GECOS.Cur'" 'DebugLevel' 1>NUL 2>'samba.!error
     1643            if RC <> 0 then call _SambaShowError /* ; else call _SambaShowMsg */
     1644        end
     1645        /* These are not editable/visible xpwFH, password.i,xlcFH,LoginClass.I,xcpwFH, pwchange.I,xDeactFH, deact.I, Status.I ) */
     1646
     1647        /* smbpasswd fields */
     1648        /* we do not allow editing these
     1649           FLagsFH, flags.I, LMHashFH, LMHash.I,NTHashFH, NTHash.I, LCTFH, LCT.I)
     1650         */
     1651    end
     1652    else say RH' is no valid record!'
     1653    IF options.!debug == 1 THEN say '_UserRecWriteBackToStems() done'
    16411654return
    16421655
     
    20772090return
    20782091
     2092/*:VRX         CB_WriteMasterPwd_Click
     2093*/
     2094CB_WriteMasterPwd_Click:
     2095    settings.!WriteMasterPwd = VRGet("CB_WriteMasterPwd","set")
     2096return
     2097
    20792098/*:VRX         CN_Groups_ContextMenu
    20802099*/
     
    21642183    call beep 880, 20
    21652184    RH = VRInfo("Record")
     2185    say "RH="RH
    21662186
    21672187    /* write back all editable field to the stems */
     
    34423462    UID.nx      = substr(VRGet("DT_UID","Caption"),6)
    34433463    GID.nx      = VRGet("DDCB_GID","Value")
    3444     password.nx = "*"
     3464
     3465    if settings.!WriteMasterPwd = 1 then do
     3466        call rxFuncAdd "Crypt", "RxCrypt", "RxCrypt"
     3467        itoa64 = "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
     3468        salt   = ""
     3469        do i = 1 to 8
     3470           salt = salt || substr( itoa64, random( 0, 63 ) + 1, 1 )
     3471        end
     3472        password.nx = Crypt(VRGet("EF_password","Value"), salt )
     3473    end
     3474    else password.nx = "*"
    34453475    loginclass.NX = ''                  /* dummy value */
    34463476    pwchange.NX   = '0'                 /* dummy value */
     
    37323762*/
    37333763PB_Save_Click:
     3764    IF options.!debug == 1 THEN say 'PB_Save_Click() started'
    37343765    call _MasterpasswdWrite
    37353766    call _GroupWrite
    37363767    call _PasswordDBRewrite
    37373768    call _SmbUserMapWrite
     3769    IF options.!debug == 1 THEN say 'PB_Save_Click() done'
    37383770return
    37393771
     
    38033835                        end
    38043836                    end
     3837                    if settings.!WriteMasterPwd = 1 then do
     3838                        call rxFuncAdd "Crypt", "RxCrypt", "RxCrypt"
     3839                        itoa64 = "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
     3840                        salt   = ""
     3841                        do i = 1 to 8
     3842                           salt = salt || substr( itoa64, random( 0, 63 ) + 1, 1 )
     3843                        end
     3844                        password.CurUserNr = Crypt(VRGet("EF_upPassword","Value"), salt )
     3845                        call _UserRecWriteBackToStems
     3846                        call PB_Save_Click
     3847                    end
    38053848                end
    38063849            end
  • branches/guitools-1.0/smbusers/smbusers_de.mkm

    r302 r569  
    201201; More error messages
    202202SMU0180I: Zuwenig freier Platz auf "%1"!
     203SMU0181I:
     204SMU0182I:
     205SMU0183I:
     206SMU0184I:
     207SMU0185I:
     208SMU0186I:
     209SMU0187I:
     210SMU0188I:
     211SMU0189I:
     212;More settings
     213SMU0190I: Passwort auch in master.passwd speichern
  • branches/guitools-1.0/smbusers/smbusers_en.mkm

    r302 r569  
    200200; More error messages
    201201SMU0180I: Free space low on "%1"!
     202SMU0181I:
     203SMU0182I:
     204SMU0183I:
     205SMU0184I:
     206SMU0185I:
     207SMU0186I:
     208SMU0187I:
     209SMU0188I:
     210SMU0189I:
     211;More settings
     212SMU0190I: Write password also to master.passwd
  • branches/guitools-1.0/smbusers/smbusers_es.mkm

    r306 r569  
    194194SMU0174I: Reseteo de pol¡ticas
    195195SMU0175I: Actualizar
     196SMU0176?:
     197SMU0177?:
     198SMU0178?:
     199SMU0179?:
     200; More error messages
     201SMU0180I: Free space low on "%1"!
     202SMU0181I:
     203SMU0182I:
     204SMU0183I:
     205SMU0184I:
     206SMU0185I:
     207SMU0186I:
     208SMU0187I:
     209SMU0188I:
     210SMU0189I:
     211;More settings
     212SMU0190I: Write password also to master.passwd
  • branches/guitools-1.0/smbusers/smbusers_fr.mkm

    r302 r569  
    216216; More error messages
    217217SMU0180I: D'espace libre sur "%1" est faible !
     218SMU0181I:
     219SMU0182I:
     220SMU0183I:
     221SMU0184I:
     222SMU0185I:
     223SMU0186I:
     224SMU0187I:
     225SMU0188I:
     226SMU0189I:
     227;More settings
     228SMU0190I: Write password also to master.passwd
  • branches/guitools-1.0/smbusers/smbusers_sv.mkm

    r302 r569  
    201201; More error messages
    202202SMU0180I: Fritt utrymme p† "%1" „r l†g!
     203SMU0181I:
     204SMU0182I:
     205SMU0183I:
     206SMU0184I:
     207SMU0185I:
     208SMU0186I:
     209SMU0187I:
     210SMU0188I:
     211SMU0189I:
     212;More settings
     213SMU0190I: Write password also to master.passwd
Note: See TracChangeset for help on using the changeset viewer.