[SCM] Samba Shared Repository - branch v3-devel updated - release-3-2-0pre2-3931-g918eae8

Günther Deschner gd at samba.org
Fri Aug 29 12:04:24 GMT 2008


The branch, v3-devel has been updated
       via  918eae8221bb8c24084cad96556e4d8c3685e314 (commit)
       via  e69eb09c1819eb4ea4bba7c3b3b0f8b6da789632 (commit)
       via  2f6f888d9cf89abf55767dc43a9e3d5de68bbcfb (commit)
       via  3babf758f49d6b08af8bd41c1dc8bd8de11a3893 (commit)
       via  11a2eecf2a92dceef2b89bbfa08abcfb71bcaf7a (commit)
       via  10345cb987f8652f5e94e612910bfcd0478b26bc (commit)
       via  c022ec38521e7ff655fc12807fcfd0e4f056e18b (commit)
       via  b3ccc9a447c380e2898606b8f392f8bec9f40dc9 (commit)
       via  6b56b70a47823ab482f0c2a5fb55a759857b99f0 (commit)
       via  1f1587423b7e01be552ae7cfc89f1334b32b124a (commit)
       via  391aaf16272aad09f8e2f1b1afb78a2535c0faaf (commit)
       via  62871cb3829f5b9cd15211030fa409dbaf3b906f (commit)
       via  93a5844814714cf07341bc2962dfac5c3e51d788 (commit)
       via  3e0c5d4154a730fd9e4430d3e64f9c7bb654dc54 (commit)
       via  f71b0808bec002f616fc451eddb7e19dd242a138 (commit)
       via  f61bf5db5ff4a1d051999712dd76788d6a113545 (commit)
       via  227fd242d1a3c911b704208694be6d1ffd1aee67 (commit)
       via  71623f853d475eac8b4293d454706c3288bcbc10 (commit)
       via  4ec041e38a7dd2d89b182ab9e03ab85a060778d3 (commit)
       via  d430d2fbd8746c8bcdb16e027d45a939c4976524 (commit)
       via  5a036a431f4a8c686ddcd72df476acc6befddba0 (commit)
       via  6e22bcc1f5cba9bc37ecf193bbc7e031b69134f5 (commit)
       via  72c660757fd3a5b20ec6de0e4ada361e0aa9e2c4 (commit)
       via  58d3a682631aa1fc3d90078db7c301de77cb7e73 (commit)
       via  51afae499974f3ad73a1c9bdfbc41e3130966ebc (commit)
       via  d85182aa54b936f8c85c6dcd10d5df613de4bb21 (commit)
       via  a06e21782a4970840f5a8c65b633c9654443161d (commit)
       via  1c8bec98456dbd5bcc319a9d7378e4a9399db40d (commit)
       via  2bd24258782811a014a191650883d50d4bf7d0b0 (commit)
       via  2274e5d8a8236b15558507289a8a455c15ca2633 (commit)
       via  cb1236dd50d0511d8ad2be30c1d9b7b8191ec83c (commit)
       via  3bb042d0e14e8a4f1feaace7f310143ff44a933a (commit)
       via  c66651b6fb023e5b0952fd135589eb955f51fa12 (commit)
       via  47768bfb01815f7b6bf687fe04ca7d19385aea59 (commit)
       via  2f2c60bf91e1e2b3b24c4bb39ac598cb3c704158 (commit)
       via  814c9a4f663ea354291456407accbc3fe7edccf6 (commit)
       via  f54b24c70afb28b6897ce258929ab2c97f255d86 (commit)
       via  9d33627d723c582f723982d090858e01bf5bd8c8 (commit)
       via  ca69c442f2007d46729a6fce920800d25195e946 (commit)
       via  2f730649b73dcd11734d12921bfdad982fe75717 (commit)
       via  77ecfff216b24b0d4b1ce79bee13c18bffa7b533 (commit)
       via  1ed8fefdae85e9b9f2794e502c8c1c41d9ba0615 (commit)
       via  33e9baeb26a469445b6750c4bd2f00b4140f0554 (commit)
       via  2f95b7d9b5ad513e43d7d41ce9fb87300ec357a8 (commit)
       via  10bd55d68a91b76e82c3ba1d113729f97830a46a (commit)
       via  a21ec57b2887012777f9580959a37cd23a412029 (commit)
       via  334a90072318407313057b1c2df5e367e957309b (commit)
       via  4d15d1ff20dee216b2fc064bc19712bd3a9cec70 (commit)
       via  f31fd1e112ec6477ae0e0eeeede0317c0cdfcbfd (commit)
       via  6bc8e229192f0bdd1154c6dd0901e4c739647c90 (commit)
       via  38178965a2f641978b666452f86fdcd258e8709b (commit)
       via  84bc7bf1adcde270ad20bba67345c0beed0b1d66 (commit)
       via  8da3b1cacb4ffa7ce8932dc0e9ceb78395d49b98 (commit)
       via  039904f601755678fcbdef7d6bdc1c6da0082b83 (commit)
       via  ff8dede3b369d39ec5638eec8a73bd6397e3d94b (commit)
       via  3235ac063bca3805b749ee7ce27028a6828af3e9 (commit)
       via  59e27519adebd45cbd5207cfa5df212d11ca648b (commit)
       via  9c5ea4e8e8deb0a2be5f894fb5de96f0dea48120 (commit)
       via  db650e9b6ead70152b2640415477bb26d0b16097 (commit)
       via  d3625b321f666bd506603b7c58ee89cd6b902d86 (commit)
       via  3a6c784284c8eb7e2b05afa6db16b27ee26ff352 (commit)
       via  b3680c0482ae05b32e9cf9fbddea57f0dd6e2bd3 (commit)
       via  3f726952eb9a1fed0f4a990c82a2c47a5c0775be (commit)
       via  863827eb2d5210350011055dda4319070bd1c520 (commit)
       via  cf381b9f08cae32b62d7bd6f7dfe5210e732eeb2 (commit)
       via  529dd675bde3ac944ca69e4dbe2fc4beeeb9aab8 (commit)
       via  5ad217be7a12211a8340052f7f4481cf2f239f8d (commit)
       via  7010230c4af667b4197c9bd58685dc5a0b2b7c4f (commit)
       via  77058447f2a61e8830763866c46db71dadf1a82a (commit)
       via  2c6b3208d3bf3d44b58248e9068924657897c917 (commit)
       via  d19c06d7d055e4b1e8e47cc2df1a192a0a19eb14 (commit)
       via  fe28ea1afd4024673f847fc8880910b1f7f0385a (commit)
      from  7d7ba8397743af52a74d00fd717bdeb5e3e12a28 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-devel


- Log -----------------------------------------------------------------
commit 918eae8221bb8c24084cad96556e4d8c3685e314
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 13:31:55 2008 +0200

    netapi: fix NetGetJoinableOUs_l.
    
    It needs to try the dns domain name for the
    ads connection.
    
    Guenther

commit e69eb09c1819eb4ea4bba7c3b3b0f8b6da789632
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 12:59:56 2008 +0200

    netapi: fix some warnings in netdomjoin-gui.
    
    Guenther

commit 2f6f888d9cf89abf55767dc43a9e3d5de68bbcfb
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 12:52:23 2008 +0200

    netapi: use NETSETUP join flags in examples.
    
    Guenther

commit 3babf758f49d6b08af8bd41c1dc8bd8de11a3893
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 12:46:38 2008 +0200

    netapi: add NetJoinFlags to public header.
    
    Guenther

commit 11a2eecf2a92dceef2b89bbfa08abcfb71bcaf7a
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 12:46:18 2008 +0200

    re-run make idl.
    
    Guenther

commit 10345cb987f8652f5e94e612910bfcd0478b26bc
Author: Günther Deschner <gd at samba.org>
Date:   Fri Aug 29 12:46:01 2008 +0200

    netapi: add NetJoinFlags to IDL.
    
    Guenther

commit c022ec38521e7ff655fc12807fcfd0e4f056e18b
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:22:19 2008 +0200

    netapi: add info21_to_USER_INFO_11 and support level 11 in NetUserEnum/GetInfo.
    
    Guenther

commit b3ccc9a447c380e2898606b8f392f8bec9f40dc9
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:21:13 2008 +0200

    netapi: add info21_to_USER_INFO_4 and support level 4 in NetUserEnum/GetInfo.
    
    Guenther

commit 6b56b70a47823ab482f0c2a5fb55a759857b99f0
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:20:04 2008 +0200

    netapi: add info21_to_USER_INFO_3 and support level 3 in NetUserEnum/GetInfo.
    
    Guenther

commit 1f1587423b7e01be552ae7cfc89f1334b32b124a
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:18:01 2008 +0200

    netapi: add info21_to_USER_INFO_2 and support level 2 in NetUserEnum/GetInfo.
    
    Guenther

commit 391aaf16272aad09f8e2f1b1afb78a2535c0faaf
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:15:23 2008 +0200

    netapi: add info21_to_USER_INFO_1 and support level 1 NetUserEnum/GetInfo.
    
    Guenther

commit 62871cb3829f5b9cd15211030fa409dbaf3b906f
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:08:31 2008 +0200

    netapi: add info21_to_USER_INFO_23.
    
    Guenther

commit 93a5844814714cf07341bc2962dfac5c3e51d788
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:07:25 2008 +0200

    netapi: add info21_to_USER_INFO_20.
    
    Guenther

commit 3e0c5d4154a730fd9e4430d3e64f9c7bb654dc54
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:05:43 2008 +0200

    netapi: add info21_to_USER_INFO_10.
    
    Guenther

commit f71b0808bec002f616fc451eddb7e19dd242a138
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 12:00:07 2008 +0200

    netapi: add builtin handle to NetUserEnum.
    
    Guenther

commit f61bf5db5ff4a1d051999712dd76788d6a113545
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 11:57:43 2008 +0200

    netapi: prepare libnetapi_samr_lookup_user to lookup priv levels.
    
    Guenther

commit 227fd242d1a3c911b704208694be6d1ffd1aee67
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 11:54:32 2008 +0200

    re-run make idl.
    
    Guenther

commit 71623f853d475eac8b4293d454706c3288bcbc10
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 11:54:16 2008 +0200

    netapi: add USER_MAXSTORAGE_UNLIMITED to IDL.
    
    Guenther

commit 4ec041e38a7dd2d89b182ab9e03ab85a060778d3
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 01:02:42 2008 +0200

    netapi: add NetShareAdd example code.
    
    Guenther

commit d430d2fbd8746c8bcdb16e027d45a939c4976524
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 01:02:01 2008 +0200

    netapi: implement NetShareAdd_r.
    
    Guenther

commit 5a036a431f4a8c686ddcd72df476acc6befddba0
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 01:06:12 2008 +0200

    netapi: add NetShareAdd to public header.
    
    Guenther

commit 6e22bcc1f5cba9bc37ecf193bbc7e031b69134f5
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 01:01:11 2008 +0200

    netapi: add NetShareAdd skeleton.
    
    Guenther

commit 72c660757fd3a5b20ec6de0e4ada361e0aa9e2c4
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 00:58:50 2008 +0200

    re-run make idl.
    
    Guenther

commit 58d3a682631aa1fc3d90078db7c301de77cb7e73
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 00:58:24 2008 +0200

    netapi: add NetShareAdd to IDL.
    
    Guenther

commit 51afae499974f3ad73a1c9bdfbc41e3130966ebc
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 00:56:25 2008 +0200

    netapi: add samr_rid_to_priv_level().
    
    Guenther

commit d85182aa54b936f8c85c6dcd10d5df613de4bb21
Author: Günther Deschner <gd at samba.org>
Date:   Thu Aug 28 00:23:51 2008 +0200

    netapi: better point out what levels are unknown in NetUserEnum.
    
    Guenther

commit a06e21782a4970840f5a8c65b633c9654443161d
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 23:43:01 2008 +0200

    netapi: add AF_OP constants to public header.
    
    Guenther

commit 1c8bec98456dbd5bcc319a9d7378e4a9399db40d
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 23:41:55 2008 +0200

    re-run make idl.
    
    Guenther

commit 2bd24258782811a014a191650883d50d4bf7d0b0
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 23:40:44 2008 +0200

    netapi: add AF_OP constants to IDL.
    
    Guenther

commit 2274e5d8a8236b15558507289a8a455c15ca2633
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 22:38:32 2008 +0200

    netapi: add USER_PRIV_* constants to public header.
    
    Guenther

commit cb1236dd50d0511d8ad2be30c1d9b7b8191ec83c
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 22:36:19 2008 +0200

    re-run make idl.
    
    Guenther

commit 3bb042d0e14e8a4f1feaace7f310143ff44a933a
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 22:35:14 2008 +0200

    netapi: add USER_PRIV_* constants to IDL.
    
    Guenther

commit c66651b6fb023e5b0952fd135589eb955f51fa12
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:28:34 2008 +0200

    netapi: give more correct error code in NetUserGetInfo.
    
    Guenther

commit 47768bfb01815f7b6bf687fe04ca7d19385aea59
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:26:37 2008 +0200

    netapi: always return correct account name in NetUserGetInfo/NetUserEnum.
    
    Guenther

commit 2f2c60bf91e1e2b3b24c4bb39ac598cb3c704158
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:25:07 2008 +0200

    netapi: add samr_acb_flags_to_netapi_flags for NetUserEnum and NetUserGetInfo.
    
    Guenther

commit 814c9a4f663ea354291456407accbc3fe7edccf6
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:16:30 2008 +0200

    netapi: display all available levels in NetUserGetInfo example.
    
    Guenther

commit f54b24c70afb28b6897ce258929ab2c97f255d86
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:15:32 2008 +0200

    netapi: fix public header for USER_INFO_4.
    
    Guenther

commit 9d33627d723c582f723982d090858e01bf5bd8c8
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:15:02 2008 +0200

    re-run make idl.
    
    Guenther

commit ca69c442f2007d46729a6fce920800d25195e946
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 19:14:32 2008 +0200

    netapi: fix IDL for USER_INFO_4.
    
    Guenther

commit 2f730649b73dcd11734d12921bfdad982fe75717
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 13:54:49 2008 +0200

    net: now that "net rpc user" uses netapi calls exclusivly, net rpc shell needs
    to use netapi as well.
    
    Guenther

commit 77ecfff216b24b0d4b1ce79bee13c18bffa7b533
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 13:47:04 2008 +0200

    net: use netapi for "net rpc user info" to enumerate user group membership.
    
    Guenther

commit 1ed8fefdae85e9b9f2794e502c8c1c41d9ba0615
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 13:37:56 2008 +0200

    netapi: implement NetUserGetGroups_r.
    
    Guenther

commit 33e9baeb26a469445b6750c4bd2f00b4140f0554
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 13:14:24 2008 +0200

    netapi: add NetUserGetGroups example code.
    
    Guenther

commit 2f95b7d9b5ad513e43d7d41ce9fb87300ec357a8
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 13:13:57 2008 +0200

    netapi: add NetUserGetGroups to public headers.
    
    Guenther

commit 10bd55d68a91b76e82c3ba1d113729f97830a46a
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:55:57 2008 +0200

    netapi: fix NetUserSetInfo return code for currently unsupported levels.
    
    Guenther

commit a21ec57b2887012777f9580959a37cd23a412029
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:49:55 2008 +0200

    netapi: add skeleton for NetUserGetGroups.
    
    Guenther

commit 334a90072318407313057b1c2df5e367e957309b
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:48:06 2008 +0200

    re-run make idl.
    
    Guenther

commit 4d15d1ff20dee216b2fc064bc19712bd3a9cec70
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:47:39 2008 +0200

    netapi: add NetUserGetGroups to IDL.
    
    Guenther

commit f31fd1e112ec6477ae0e0eeeede0317c0cdfcbfd
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:19:49 2008 +0200

    net: use netapi function to set user password.
    
    Guenther

commit 6bc8e229192f0bdd1154c6dd0901e4c739647c90
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 11:14:15 2008 +0200

    net: use netapi function to list users.
    
    Guenther

commit 38178965a2f641978b666452f86fdcd258e8709b
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 02:18:30 2008 +0200

    netapi: support level 1014 in NetUserSetInfo.
    
    Guenther

commit 84bc7bf1adcde270ad20bba67345c0beed0b1d66
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 02:11:54 2008 +0200

    netapi: support level 1024 in NetUserSetInfo.
    
    Guenther

commit 8da3b1cacb4ffa7ce8932dc0e9ceb78395d49b98
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 02:02:30 2008 +0200

    netapi: support level 1051 in NetUserSetInfo.
    
    Guenther

commit 039904f601755678fcbdef7d6bdc1c6da0082b83
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:53:10 2008 +0200

    netapi: support level 1053 in NetUserSetInfo.
    
    Guenther

commit ff8dede3b369d39ec5638eec8a73bd6397e3d94b
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:47:33 2008 +0200

    netapi: support level 1052 in NetUserSetInfo.
    
    Guenther

commit 3235ac063bca3805b749ee7ce27028a6828af3e9
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:44:40 2008 +0200

    re-run make idl.
    
    Guenther

commit 59e27519adebd45cbd5207cfa5df212d11ca648b
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:43:52 2008 +0200

    netapi: add usriX_profile/usriX_home_dir_drive/usriX_primary_group_id to USER_INFO_X in IDL.
    
    Guenther

commit 9c5ea4e8e8deb0a2be5f894fb5de96f0dea48120
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:40:46 2008 +0200

    netapi: support level 1006 in NetUserSetInfo.
    
    Guenther

commit db650e9b6ead70152b2640415477bb26d0b16097
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:36:49 2008 +0200

    netapi: support level 1012 in NetUserSetInfo.
    
    Guenther

commit d3625b321f666bd506603b7c58ee89cd6b902d86
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:36:06 2008 +0200

    netapi: fix acct_flags handling in convert_USER_INFO_X_to_samr_user_info21.
    
    Guenther

commit 3a6c784284c8eb7e2b05afa6db16b27ee26ff352
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:15:21 2008 +0200

    netapi: support level 1009 in NetUserSetInfo.
    
    Guenther

commit b3680c0482ae05b32e9cf9fbddea57f0dd6e2bd3
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 01:04:21 2008 +0200

    netapi: support level 1011 in NetUserSetInfo.
    
    Guenther

commit 3f726952eb9a1fed0f4a990c82a2c47a5c0775be
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:57:07 2008 +0200

    netapi: fix convert_USER_INFO_X_to_samr_user_info21.
    
    Guenther

commit 863827eb2d5210350011055dda4319070bd1c520
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:33:49 2008 +0200

    netapi: support level 1003 in NetUserSetInfo.
    
    Guenther

commit cf381b9f08cae32b62d7bd6f7dfe5210e732eeb2
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:33:16 2008 +0200

    netapi: process level 1003 in construct_USER_INFO_X as well.
    
    Guenther

commit 529dd675bde3ac944ca69e4dbe2fc4beeeb9aab8
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:32:08 2008 +0200

    netapi: make set_user_info_USER_INFO_X a separate function.
    
    Guenther

commit 5ad217be7a12211a8340052f7f4481cf2f239f8d
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:31:20 2008 +0200

    netapi: add more infolevels to NetUserSetInfo example.
    
    Guenther

commit 7010230c4af667b4197c9bd58685dc5a0b2b7c4f
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:30:51 2008 +0200

    netapi: add ENCRYPTED_PWLEN to public header.
    
    Guenther

commit 77058447f2a61e8830763866c46db71dadf1a82a
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:30:22 2008 +0200

    re-run make idl.
    
    Guenther

commit 2c6b3208d3bf3d44b58248e9068924657897c917
Author: Günther Deschner <gd at samba.org>
Date:   Wed Aug 27 00:30:04 2008 +0200

    netapi: fix ENCRYPTED_PWLEN in IDL.
    
    Guenther

commit d19c06d7d055e4b1e8e47cc2df1a192a0a19eb14
Author: Günther Deschner <gd at samba.org>
Date:   Tue Aug 26 21:12:23 2008 +0200

    netapi: add all USER_INFO structs to public header.
    
    Guenther

commit fe28ea1afd4024673f847fc8880910b1f7f0385a
Author: Günther Deschner <gd at samba.org>
Date:   Tue Aug 26 21:10:19 2008 +0200

    net: use netapi for rpc_user_rename.
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 source/Makefile.in                                 |    3 +-
 source/lib/netapi/examples/Makefile.in             |   14 +-
 .../examples/netdomjoin-gui/netdomjoin-gui.c       |   43 +-
 source/lib/netapi/examples/netdomjoin/netdomjoin.c |    4 +-
 .../{user/user_setinfo.c => share/share_add.c}     |   47 +-
 .../group_getusers.c => user/user_getgroups.c}     |   27 +-
 source/lib/netapi/examples/user/user_getinfo.c     |  149 ++++
 source/lib/netapi/examples/user/user_setinfo.c     |  122 +++-
 source/lib/netapi/joindomain.c                     |    2 +-
 source/lib/netapi/libnetapi.c                      |   98 +++
 source/lib/netapi/libnetapi.h                      |   19 +
 source/lib/netapi/netapi.h                         |  194 ++++-
 source/lib/netapi/share.c                          |  133 +++
 source/lib/netapi/user.c                           |  919 +++++++++++++++++---
 source/librpc/gen_ndr/libnetapi.h                  |   92 ++-
 source/librpc/gen_ndr/ndr_libnetapi.c              |  251 ++++--
 source/librpc/gen_ndr/ndr_libnetapi.h              |   69 +-
 source/librpc/idl/libnetapi.idl                    |   95 ++-
 source/utils/net_dom.c                             |    8 +-
 source/utils/net_rpc.c                             |  492 ++---------
 source/utils/net_rpc_shell.c                       |    9 +
 21 files changed, 2087 insertions(+), 703 deletions(-)
 copy source/lib/netapi/examples/{user/user_setinfo.c => share/share_add.c} (69%)
 copy source/lib/netapi/examples/{group/group_getusers.c => user/user_getgroups.c} (84%)
 create mode 100644 source/lib/netapi/share.c


Changeset truncated at 500 lines:

diff --git a/source/Makefile.in b/source/Makefile.in
index 486d47f..5793b5e 100644
--- a/source/Makefile.in
+++ b/source/Makefile.in
@@ -1835,7 +1835,8 @@ LIBNETAPI_OBJ0 = lib/netapi/netapi.o \
 		 lib/netapi/group.o \
 		 lib/netapi/localgroup.o \
 		 lib/netapi/samr.o \
-		 lib/netapi/sid.o
+		 lib/netapi/sid.o \
+		 lib/netapi/share.o
 
 LIBNETAPI_OBJ  = $(LIBNETAPI_OBJ0) $(LIBNET_OBJ) \
 		 $(LIBSMBCONF_OBJ) \
diff --git a/source/lib/netapi/examples/Makefile.in b/source/lib/netapi/examples/Makefile.in
index 0b7553c..d48457a 100644
--- a/source/lib/netapi/examples/Makefile.in
+++ b/source/lib/netapi/examples/Makefile.in
@@ -31,6 +31,7 @@ PROGS = bin/getdc at EXEEXT@ \
 	bin/user_setinfo at EXEEXT@ \
 	bin/user_modalsget at EXEEXT@ \
 	bin/user_modalsset at EXEEXT@ \
+	bin/user_getgroups at EXEEXT@ \
 	bin/group_add at EXEEXT@ \
 	bin/group_del at EXEEXT@ \
 	bin/group_enum at EXEEXT@ \
@@ -48,7 +49,8 @@ PROGS = bin/getdc at EXEEXT@ \
 	bin/localgroup_delmembers at EXEEXT@ \
 	bin/localgroup_setmembers at EXEEXT@ \
 	bin/localgroup_getmembers at EXEEXT@ \
-	bin/remote_tod at EXEEXT@
+	bin/remote_tod at EXEEXT@ \
+	bin/share_add at EXEEXT@
 
 all: $(PROGS)
 
@@ -91,6 +93,7 @@ USERGETINFO_OBJ = user/user_getinfo.o $(CMDLINE_OBJ)
 USERSETINFO_OBJ = user/user_setinfo.o $(CMDLINE_OBJ)
 USERMODALSGET_OBJ = user/user_modalsget.o $(CMDLINE_OBJ)
 USERMODALSSET_OBJ = user/user_modalsset.o $(CMDLINE_OBJ)
+USERGETGROUPS_OBJ = user/user_getgroups.o $(CMDLINE_OBJ)
 GROUPADD_OBJ = group/group_add.o $(CMDLINE_OBJ)
 GROUPDEL_OBJ = group/group_del.o $(CMDLINE_OBJ)
 GROUPENUM_OBJ = group/group_enum.o $(CMDLINE_OBJ)
@@ -109,6 +112,7 @@ LOCALGROUPDELMEMBERS_OBJ = localgroup/localgroup_delmembers.o $(CMDLINE_OBJ)
 LOCALGROUPSETMEMBERS_OBJ = localgroup/localgroup_setmembers.o $(CMDLINE_OBJ)
 LOCALGROUPGETMEMBERS_OBJ = localgroup/localgroup_getmembers.o $(CMDLINE_OBJ)
 REMOTETOD_OBJ = server/remote_tod.o $(CMDLINE_OBJ)
+SHAREADD_OBJ = share/share_add.o $(CMDLINE_OBJ)
 
 bin/getdc at EXEEXT@: $(BINARY_PREREQS) $(GETDC_OBJ)
 	@echo Linking $@
@@ -166,6 +170,10 @@ bin/user_modalsset at EXEEXT@: $(BINARY_PREREQS) $(USERMODALSSET_OBJ)
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(USERMODALSSET_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
 
+bin/user_getgroups at EXEEXT@: $(BINARY_PREREQS) $(USERGETGROUPS_OBJ)
+	@echo Linking $@
+	@$(CC) $(FLAGS) -o $@ $(USERGETGROUPS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
+
 bin/group_add at EXEEXT@: $(BINARY_PREREQS) $(GROUPADD_OBJ)
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(GROUPADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
@@ -238,6 +246,10 @@ bin/remote_tod at EXEEXT@: $(BINARY_PREREQS) $(REMOTETOD_OBJ)
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(REMOTETOD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
 
+bin/share_add at EXEEXT@: $(BINARY_PREREQS) $(SHAREADD_OBJ)
+	@echo Linking $@
+	@$(CC) $(FLAGS) -o $@ $(SHAREADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
+
 clean:
 	-rm -f $(PROGS)
 	-rm -f core */*~ *~ \
diff --git a/source/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c b/source/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c
index 418b9c8..4e0488e 100644
--- a/source/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c
+++ b/source/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c
@@ -38,11 +38,6 @@
 #define SAMBA_IMAGE_PATH "/usr/share/pixmaps/samba/logo.png"
 #define SAMBA_IMAGE_PATH_SMALL "/usr/share/pixmaps/samba/logo-small.png"
 
-#define WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED ( 0x00000020 )
-#define WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE ( 0x00000004 )
-#define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
-#define WKSSVC_JOIN_FLAGS_JOIN_TYPE ( 0x00000001 )
-
 #define NetSetupWorkgroupName ( 2 )
 #define NetSetupDomainName ( 3 )
 
@@ -631,9 +626,9 @@ static void callback_do_join(GtkWidget *widget,
 	if (state->name_type_new == NetSetupDomainName) {
 		domain_join = TRUE;
 		join_creds_required = TRUE;
-		join_flags = WKSSVC_JOIN_FLAGS_JOIN_TYPE |
-			     WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE |
-			     WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED; /* for testing */
+		join_flags = NETSETUP_JOIN_DOMAIN |
+			     NETSETUP_ACCT_CREATE |
+			     NETSETUP_DOMAIN_JOIN_IF_JOINED; /* for testing */
 	}
 
 	if ((state->name_type_initial == NetSetupDomainName) &&
@@ -641,8 +636,8 @@ static void callback_do_join(GtkWidget *widget,
 		try_unjoin = TRUE;
 		unjoin_creds_required = TRUE;
 		join_creds_required = FALSE;
-		unjoin_flags = WKSSVC_JOIN_FLAGS_JOIN_TYPE |
-			       WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE;
+		unjoin_flags = NETSETUP_JOIN_DOMAIN |
+			       NETSETUP_ACCT_DELETE;
 	}
 
 	if (try_unjoin) {
@@ -823,9 +818,13 @@ static void callback_enter_hostname_and_unlock(GtkWidget *widget,
 	}
 	state->hostname_changed = TRUE;
 	if (state->name_type_initial == NetSetupDomainName) {
-		asprintf(&str, "%s.%s", entry_text, state->my_dnsdomain);
+		if (asprintf(&str, "%s.%s", entry_text, state->my_dnsdomain) == -1) {
+			return;
+		}
 	} else {
-		asprintf(&str, "%s.", entry_text);
+		if (asprintf(&str, "%s.", entry_text) == -1) {
+			return;
+		}
 	}
 	gtk_label_set_text(GTK_LABEL(state->label_full_computer_name), str);
 	free(str);
@@ -1132,10 +1131,14 @@ static void callback_do_change(GtkWidget *widget,
 		char *str = NULL;
 		entry_text = gtk_entry_get_text(GTK_ENTRY(entry));
 		if (state->name_type_initial == NetSetupDomainName) {
-			asprintf(&str, "%s.%s", entry_text,
-				 state->my_dnsdomain);
+			if (asprintf(&str, "%s.%s", entry_text,
+				 state->my_dnsdomain) == -1) {
+				return;
+			}
 		} else {
-			asprintf(&str, "%s.", entry_text);
+			if (asprintf(&str, "%s.", entry_text) == -1) {
+				return;
+			}
 		}
 		gtk_label_set_text(GTK_LABEL(state->label_full_computer_name),
 				   str);
@@ -1436,10 +1439,14 @@ static int draw_main_window(struct join_state *state)
 		/* Label */
 		char *str = NULL;
 		if (state->name_type_initial == NetSetupDomainName) {
-			asprintf(&str, "%s.%s", state->my_hostname,
-				 state->my_dnsdomain);
+			if (asprintf(&str, "%s.%s", state->my_hostname,
+				 state->my_dnsdomain) == -1) {
+				return -1;
+			}
 		} else {
-			asprintf(&str, "%s.", state->my_hostname);
+			if (asprintf(&str, "%s.", state->my_hostname) == -1) {
+				return -1;
+			}
 		}
 
 		label = gtk_label_new(str);
diff --git a/source/lib/netapi/examples/netdomjoin/netdomjoin.c b/source/lib/netapi/examples/netdomjoin/netdomjoin.c
index bd7c363..08ce71b 100644
--- a/source/lib/netapi/examples/netdomjoin/netdomjoin.c
+++ b/source/lib/netapi/examples/netdomjoin/netdomjoin.c
@@ -39,7 +39,9 @@ int main(int argc, const char **argv)
 	const char *account_ou = NULL;
 	const char *account = NULL;
 	const char *password = NULL;
-	uint32_t join_flags = 0x00000023;
+	uint32_t join_flags = NETSETUP_JOIN_DOMAIN |
+			      NETSETUP_ACCT_CREATE |
+			      NETSETUP_DOMAIN_JOIN_IF_JOINED;
 	struct libnetapi_ctx *ctx = NULL;
 
 	poptContext pc;
diff --git a/source/lib/netapi/examples/user/user_setinfo.c b/source/lib/netapi/examples/share/share_add.c
similarity index 69%
copy from source/lib/netapi/examples/user/user_setinfo.c
copy to source/lib/netapi/examples/share/share_add.c
index ec46423..3d79488 100644
--- a/source/lib/netapi/examples/user/user_setinfo.c
+++ b/source/lib/netapi/examples/share/share_add.c
@@ -1,6 +1,6 @@
 /*
  *  Unix SMB/CIFS implementation.
- *  NetUserSetInfo query
+ *  NetShareAdd query
  *  Copyright (C) Guenther Deschner 2008
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -32,11 +32,12 @@ int main(int argc, const char **argv)
 	NET_API_STATUS status;
 	struct libnetapi_ctx *ctx = NULL;
 	const char *hostname = NULL;
-	const char *username = NULL;
-	uint32_t level = 1007;
+	const char *sharename = NULL;
+	const char *path = NULL;
+	uint32_t level = 0;
 	uint32_t parm_err = 0;
 
-	struct USER_INFO_1007 u1007;
+	struct SHARE_INFO_2 i2;
 
 	poptContext pc;
 	int opt;
@@ -52,9 +53,9 @@ int main(int argc, const char **argv)
 		return status;
 	}
 
-	pc = poptGetContext("user_setinfo", argc, argv, long_options, 0);
+	pc = poptGetContext("share_add", argc, argv, long_options, 0);
 
-	poptSetOtherOptionHelp(pc, "hostname username level");
+	poptSetOtherOptionHelp(pc, "hostname sharename path");
 	while((opt = poptGetNextOpt(pc)) != -1) {
 	}
 
@@ -68,23 +69,35 @@ int main(int argc, const char **argv)
 		poptPrintHelp(pc, stderr, 0);
 		goto out;
 	}
-	username = poptGetArg(pc);
+	sharename = poptGetArg(pc);
+
+	if (!poptPeekArg(pc)) {
+		poptPrintHelp(pc, stderr, 0);
+		goto out;
+	}
+	path = poptGetArg(pc);
 
 	if (poptPeekArg(pc)) {
 		level = atoi(poptGetArg(pc));
 	}
 
-	/* NetUserSetInfo */
-
-	u1007.usri1007_comment = "NetApi test comment";
-
-	status = NetUserSetInfo(hostname,
-				username,
-				level,
-				(uint8_t *)&u1007,
-				&parm_err);
+	/* NetShareAdd */
+
+	i2.shi2_netname		= sharename;
+	i2.shi2_type		= 0;
+	i2.shi2_remark		= "Test share created via NetApi";
+	i2.shi2_permissions	= 0;
+	i2.shi2_max_uses	= (uint32_t)-1;
+	i2.shi2_current_uses	= 0;
+	i2.shi2_path		= path;
+	i2.shi2_passwd		= NULL;
+
+	status = NetShareAdd(hostname,
+			     2,
+			     (uint8_t *)&i2,
+			     &parm_err);
 	if (status != 0) {
-		printf("NetUserSetInfo failed with: %s\n",
+		printf("NetShareAdd failed with: %s\n",
 			libnetapi_get_error_string(ctx, status));
 		goto out;
 	}
diff --git a/source/lib/netapi/examples/group/group_getusers.c b/source/lib/netapi/examples/user/user_getgroups.c
similarity index 84%
copy from source/lib/netapi/examples/group/group_getusers.c
copy to source/lib/netapi/examples/user/user_getgroups.c
index 55d0717..939415e 100644
--- a/source/lib/netapi/examples/group/group_getusers.c
+++ b/source/lib/netapi/examples/user/user_getgroups.c
@@ -1,6 +1,6 @@
 /*
  *  Unix SMB/CIFS implementation.
- *  NetGroupGetUsers query
+ *  NetUserGetGroups query
  *  Copyright (C) Guenther Deschner 2008
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -32,12 +32,11 @@ int main(int argc, const char **argv)
 	NET_API_STATUS status;
 	struct libnetapi_ctx *ctx = NULL;
 	const char *hostname = NULL;
-	const char *groupname = NULL;
+	const char *username = NULL;
 	uint32_t level = 0;
 	uint8_t *buffer = NULL;
 	uint32_t entries_read = 0;
 	uint32_t total_entries = 0;
-	uint32_t resume_handle = 0;
 	int i;
 
 	struct GROUP_USERS_INFO_0 *info0 = NULL;
@@ -57,9 +56,9 @@ int main(int argc, const char **argv)
 		return status;
 	}
 
-	pc = poptGetContext("group_getusers", argc, argv, long_options, 0);
+	pc = poptGetContext("user_getgroups", argc, argv, long_options, 0);
 
-	poptSetOtherOptionHelp(pc, "hostname groupname level");
+	poptSetOtherOptionHelp(pc, "hostname username level");
 	while((opt = poptGetNextOpt(pc)) != -1) {
 	}
 
@@ -73,25 +72,24 @@ int main(int argc, const char **argv)
 		poptPrintHelp(pc, stderr, 0);
 		goto out;
 	}
-	groupname = poptGetArg(pc);
+	username = poptGetArg(pc);
 
 	if (poptPeekArg(pc)) {
 		level = atoi(poptGetArg(pc));
 	}
 
-	/* NetGroupGetUsers */
+	/* NetUserGetGroups */
 
 	do {
-		status = NetGroupGetUsers(hostname,
-					  groupname,
+		status = NetUserGetGroups(hostname,
+					  username,
 					  level,
 					  &buffer,
 					  (uint32_t)-1,
 					  &entries_read,
-					  &total_entries,
-					  &resume_handle);
+					  &total_entries);
 		if (status == 0 || status == ERROR_MORE_DATA) {
-			printf("total entries: %d\n", total_entries);
+
 			switch (level) {
 				case 0:
 					info0 = (struct GROUP_USERS_INFO_0 *)buffer;
@@ -102,6 +100,7 @@ int main(int argc, const char **argv)
 				default:
 					break;
 			}
+
 			for (i=0; i<entries_read; i++) {
 				switch (level) {
 					case 0:
@@ -113,6 +112,8 @@ int main(int argc, const char **argv)
 						printf("#%d attributes: %d\n", i, info1->grui1_attributes);
 						info1++;
 						break;
+					default:
+						break;
 				}
 			}
 			NetApiBufferFree(buffer);
@@ -120,7 +121,7 @@ int main(int argc, const char **argv)
 	} while (status == ERROR_MORE_DATA);
 
 	if (status != 0) {
-		printf("NetGroupGetUsers failed with: %s\n",
+		printf("NetUserGetGroups failed with: %s\n",
 			libnetapi_get_error_string(ctx, status));
 	}
 
diff --git a/source/lib/netapi/examples/user/user_getinfo.c b/source/lib/netapi/examples/user/user_getinfo.c
index 19234d0..9e95260 100644
--- a/source/lib/netapi/examples/user/user_getinfo.c
+++ b/source/lib/netapi/examples/user/user_getinfo.c
@@ -36,10 +36,15 @@ int main(int argc, const char **argv)
 	uint8_t *buffer = NULL;
 	uint32_t level = 0;
 	char *sid_str = NULL;
+	int i;
 
 	struct USER_INFO_0 *u0;
 	struct USER_INFO_1 *u1;
+	struct USER_INFO_2 *u2;
+	struct USER_INFO_3 *u3;
+	struct USER_INFO_4 *u4;
 	struct USER_INFO_10 *u10;
+	struct USER_INFO_11 *u11;
 	struct USER_INFO_20 *u20;
 	struct USER_INFO_23 *u23;
 
@@ -107,6 +112,121 @@ int main(int argc, const char **argv)
 			printf("flags: 0x%08x\n", u1->usri1_flags);
 			printf("script: %s\n", u1->usri1_script_path);
 			break;
+		case 2:
+			u2 = (struct USER_INFO_2 *)buffer;
+			printf("name: %s\n", u2->usri2_name);
+			printf("password: %s\n", u2->usri2_password);
+			printf("password_age: %d\n", u2->usri2_password_age);
+			printf("priv: %d\n", u2->usri2_priv);
+			printf("homedir: %s\n", u2->usri2_home_dir);
+			printf("comment: %s\n", u2->usri2_comment);
+			printf("flags: 0x%08x\n", u2->usri2_flags);
+			printf("script: %s\n", u2->usri2_script_path);
+			printf("auth flags: 0x%08x\n", u2->usri2_auth_flags);
+			printf("full name: %s\n", u2->usri2_full_name);
+			printf("user comment: %s\n", u2->usri2_usr_comment);
+			printf("user parameters: %s\n", u2->usri2_parms);
+			printf("workstations: %s\n", u2->usri2_workstations);
+			printf("last logon (seconds since jan. 1, 1970 GMT): %d\n",
+				u2->usri2_last_logon);
+			printf("last logoff (seconds since jan. 1, 1970 GMT): %d\n",
+				u2->usri2_last_logoff);
+			printf("account expires (seconds since jan. 1, 1970 GMT): %d\n",
+				u2->usri2_acct_expires);
+			printf("max storage: %d\n", u2->usri2_max_storage);
+			printf("units per week: %d\n", u2->usri2_units_per_week);
+			printf("logon hours:");
+			for (i=0; i<21; i++) {
+				printf(" %x", (uint8_t)u2->usri2_logon_hours[i]);
+			}
+			printf("\n");
+			printf("bad password count: %d\n", u2->usri2_bad_pw_count);
+			printf("logon count: %d\n", u2->usri2_num_logons);
+			printf("logon server: %s\n", u2->usri2_logon_server);
+			printf("country code: %d\n", u2->usri2_country_code);
+			printf("code page: %d\n", u2->usri2_code_page);
+			break;
+		case 3:
+			u3 = (struct USER_INFO_3 *)buffer;
+			printf("name: %s\n", u3->usri3_name);
+			printf("password_age: %d\n", u3->usri3_password_age);
+			printf("priv: %d\n", u3->usri3_priv);
+			printf("homedir: %s\n", u3->usri3_home_dir);
+			printf("comment: %s\n", u3->usri3_comment);
+			printf("flags: 0x%08x\n", u3->usri3_flags);
+			printf("script: %s\n", u3->usri3_script_path);
+			printf("auth flags: 0x%08x\n", u3->usri3_auth_flags);
+			printf("full name: %s\n", u3->usri3_full_name);
+			printf("user comment: %s\n", u3->usri3_usr_comment);
+			printf("user parameters: %s\n", u3->usri3_parms);
+			printf("workstations: %s\n", u3->usri3_workstations);
+			printf("last logon (seconds since jan. 1, 1970 GMT): %d\n",
+				u3->usri3_last_logon);
+			printf("last logoff (seconds since jan. 1, 1970 GMT): %d\n",
+				u3->usri3_last_logoff);
+			printf("account expires (seconds since jan. 1, 1970 GMT): %d\n",
+				u3->usri3_acct_expires);
+			printf("max storage: %d\n", u3->usri3_max_storage);
+			printf("units per week: %d\n", u3->usri3_units_per_week);
+			printf("logon hours:");
+			for (i=0; i<21; i++) {
+				printf(" %x", (uint8_t)u3->usri3_logon_hours[i]);
+			}
+			printf("\n");
+			printf("bad password count: %d\n", u3->usri3_bad_pw_count);
+			printf("logon count: %d\n", u3->usri3_num_logons);
+			printf("logon server: %s\n", u3->usri3_logon_server);
+			printf("country code: %d\n", u3->usri3_country_code);
+			printf("code page: %d\n", u3->usri3_code_page);
+			printf("user id: %d\n", u3->usri3_user_id);
+			printf("primary group id: %d\n", u3->usri3_primary_group_id);
+			printf("profile: %s\n", u3->usri3_profile);
+			printf("home dir drive: %s\n", u3->usri3_home_dir_drive);
+			printf("password expired: %d\n", u3->usri3_password_expired);
+			break;
+		case 4:
+			u4 = (struct USER_INFO_4 *)buffer;
+			printf("name: %s\n", u4->usri4_name);
+			printf("password: %s\n", u4->usri4_password);
+			printf("password_age: %d\n", u4->usri4_password_age);
+			printf("priv: %d\n", u4->usri4_priv);
+			printf("homedir: %s\n", u4->usri4_home_dir);
+			printf("comment: %s\n", u4->usri4_comment);
+			printf("flags: 0x%08x\n", u4->usri4_flags);
+			printf("script: %s\n", u4->usri4_script_path);
+			printf("auth flags: 0x%08x\n", u4->usri4_auth_flags);
+			printf("full name: %s\n", u4->usri4_full_name);
+			printf("user comment: %s\n", u4->usri4_usr_comment);
+			printf("user parameters: %s\n", u4->usri4_parms);
+			printf("workstations: %s\n", u4->usri4_workstations);
+			printf("last logon (seconds since jan. 1, 1970 GMT): %d\n",
+				u4->usri4_last_logon);
+			printf("last logoff (seconds since jan. 1, 1970 GMT): %d\n",
+				u4->usri4_last_logoff);
+			printf("account expires (seconds since jan. 1, 1970 GMT): %d\n",
+				u4->usri4_acct_expires);
+			printf("max storage: %d\n", u4->usri4_max_storage);
+			printf("units per week: %d\n", u4->usri4_units_per_week);
+			printf("logon hours:");
+			for (i=0; i<21; i++) {
+				printf(" %x", (uint8_t)u4->usri4_logon_hours[i]);
+			}
+			printf("\n");
+			printf("bad password count: %d\n", u4->usri4_bad_pw_count);
+			printf("logon count: %d\n", u4->usri4_num_logons);
+			printf("logon server: %s\n", u4->usri4_logon_server);
+			printf("country code: %d\n", u4->usri4_country_code);
+			printf("code page: %d\n", u4->usri4_code_page);
+			if (ConvertSidToStringSid(u4->usri4_user_sid,


-- 
Samba Shared Repository


More information about the samba-cvs mailing list