The branch, master has been updated
       via  3990df0 WHATSNEW: Add information on new GPO features
       via  cdff99b gpo: Always use an SMB signed connection
       via  f4f0a5d gpo: Maintain an XML DTD for reference of the backup
       via  53ee515 tests/gpo: Tests using a static backup directory from gpo 
backup
       via  a844137 tests/gpo: Add a backup for showing that GPO backup and 
restore works
       via  cedfea1 gpo: Make restore with entities more robust
       via  9977b4b gitattributes: Ignore .SAMBABACKUP files
       via  07de156 gpo: Add a --generalize to the backup command
       via  3ff695f fdeploy_ini: Generalize the share name SIDs
       via  abff0c4 gp_parse: Add a generalize XML function to the top level 
parser
       via  57dd88c gp_ini: Add a scripts ini parser for better generalization
       via  806e3e6 gp_ini: Add a fdeploy1 parser for better generalization
       via  4edb176 gp_ini: Allow better overriding of behaviour in inherited 
classes
       via  ee01039 gp_csv: Add CSV generalization metadata
       via  854c3eb gpo: Enable more specific parsers of GPO files
       via  497db98 gp_aas: Leave a placeholder for the .aas files for now
       via  dac3c20 gp_inf: Parse the GptTmpl.inf file which stores security 
settings
       via  4a69308 gp_csv: Parse the audit.csv file which records audit 
settings
       via  e27c868 gp_ini: Parse .ini files in SYSVOL
       via  6c5a507 gp_pol: Parse the .pol files (PReg) which stored winreg 
settings
       via  aac6cd3 gpo: Add a restore command (for backups) from XML
       via  34453a0 gpo: Add a backup command (similar to fetch)
       via  7047f45 gp_parse: Introduce new module for parsing GPO files
       via  8140a7b preg: Use gensize to allow modification of winreg data to 
be repacked
       via  c71ba94 preg: Using winreg_Data_GPO instead of DATA_BLOB
       via  463dcc9 preg: Unpack winreg_Data for parsing
       via  572fd63 preg: Build python preg bindings
       via  ea297d0 winreg: Add hyper REG_QWORD to parsing routines
       via  6d52ef8 git: Treat .dump files as binary
       via  739691f buildtools: Split git ls-files output on newline, not any 
whitespace
      from  f249bea netcmd: Fix --kerberos=yes and --no-secrets domain backups

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 3990df0850525e5b45cafac13e26e3a2ac516f41
Author: Andrew Bartlett <abart...@samba.org>
Date:   Thu Jul 12 16:14:27 2018 +1200

    WHATSNEW: Add information on new GPO features
    
    Signed-off-by: Andrew Bartlett <abart...@samba.org>
    Reviewed-by: Douglas Bagnall <douglas.bagn...@catalyst.net.nz>
    
    Autobuild-User(master): Andrew Bartlett <abart...@samba.org>
    Autobuild-Date(master): Fri Aug 17 02:44:41 CEST 2018 on sn-devel-144

commit cdff99b949b574ff96a8514b3514f1261bb42ca3
Author: Andrew Bartlett <abart...@samba.org>
Date:   Thu Aug 16 13:10:58 2018 +1200

    gpo: Always use an SMB signed connection
    
    This ensures data integrity in the backup.
    
    Signed-off-by: Andrew Bartlett <abart...@samba.org>
    Reviewed-by: Douglas Bagnall <douglas.bagn...@catalyst.net.nz>

commit f4f0a5d925bed9d803a33d33da9d7a197dc61c9a
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed Jun 13 16:52:55 2018 +1200

    gpo: Maintain an XML DTD for reference of the backup
    
    This may or may not actually parse, but is mostly for reference
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 53ee5157b162fc103ff16fb7d3c8364d0d9975b1
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Tue Jun 12 16:19:57 2018 +1200

    tests/gpo: Tests using a static backup directory from gpo backup
    
    In particular, we want to see that the binary matches, that the XML will
    backup to the same values, that the fallback with copy-restore works,
    and that the generalize will generalize over different restored
    entities.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit a844137e6828aebf21a94d843b31ac11309f3fd5
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed Jun 13 14:54:08 2018 +1200

    tests/gpo: Add a backup for showing that GPO backup and restore works
    
    This will be used to write a test in the coming patches.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit cedfea1b077a7cb068d884e17f2d9c22e7e97cd5
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Tue Jun 12 16:19:41 2018 +1200

    gpo: Make restore with entities more robust
    
    Sometimes the restore fails for unknown reasons, but rearranging the XML
    such that the DTD is after the xml header appears to fix it. This might
    be the case in certain files where no entities are used perhaps.
    
    This could probably be made more tolerant using regex, but for the most
    part we expect the fixed output from the minidom pretty-printed XML.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 9977b4bc7c3fa7ef93f4f42fcc707d9b2d84f9cb
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed Jun 13 14:38:33 2018 +1200

    gitattributes: Ignore .SAMBABACKUP files
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 07de156598b614aa0ecbbc542ff87dae43a0e08f
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Tue May 29 11:57:26 2018 +1200

    gpo: Add a --generalize to the backup command
    
    This normally prints out the entities in DTD form to be given to the restore
    command with --entities. Specifying --entities during the backup 
conveniently
    writes these entities to a file. Generalizing occurs after the standard 
backup
    on the XML files, which will then re-write the XML file.
    
    There are a number of files which can be further handled, including many of 
the
    preferences XML files. This will require more annotation and parsing.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 3ff695fd363b9d6cff1e17d8f4c0278e29b3b62d
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 30 09:42:45 2018 +1200

    fdeploy_ini: Generalize the share name SIDs
    
    This overrides the custom entity handler defined in the top level parser.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit abff0c4f4d2620b2fb86c8325950f8e95b5992d7
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Tue May 29 11:57:26 2018 +1200

    gp_parse: Add a generalize XML function to the top level parser
    
    In this function we take XML and using the required metadata, we rewrite
    it into a generic form using entities. ElementTree unfortunately does
    not allow us to store unescaped entities, and so we must do a textual
    replace on the output XML.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 57dd88ce5cde29462b77f2f1a5d0035573721c4e
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed Jun 6 12:57:12 2018 +1200

    gp_ini: Add a scripts ini parser for better generalization
    
    We mark the command path argument as a network path.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 806e3e60e04d393b72d1c2422c57b93a0d242440
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Thu May 24 15:17:35 2018 +1200

    gp_ini: Add a fdeploy1 parser for better generalization
    
    We still fail to handle entities in fdeploy.ini (version 0) files. Here we
    manage to factor out some of the SIDs, but not all of them. This will be
    completed in a later patch. The overall idea is to split the SID values into
    individual XML elements and annotate them. We also note down network paths 
for
    the redirection folders.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 4edb1769b0beb1a76e5b393facc3aee4406a3fc8
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Thu May 31 14:36:00 2018 +1200

    gp_ini: Allow better overriding of behaviour in inherited classes
    
    We will need this to parse the parameters or section names as SIDs for 
fdeploy1.ini
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit ee010392d5e8072acc1623c5eab453599af88656
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 30 09:43:53 2018 +1200

    gp_csv: Add CSV generalization metadata
    
    There are user identifiers and ACLs which may be stored in the audit CSV.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 854c3eb2aaac9553981488d4f313d3b76c7473d5
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 23 13:51:08 2018 +1200

    gpo: Enable more specific parsers of GPO files
    
    * .pol files
    * .ini (and GPT.ini)
    * audit.csv
    * GptTmpl.inf
    
    .aas is currently not handled.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 497db985382475b114266896c07fb09730d41a30
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Fri May 18 13:03:40 2018 +1200

    gp_aas: Leave a placeholder for the .aas files for now
    
    This is to be implemented, but the documentation is somewhat lacking for
    the .aas files and we so we leave this for now. In particular, the
    documentation doesn't seem to describe all the possible sections, nor do
    we understand what happens if we replace certain aspects of the file --
    and whether or not it will remain functional.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit dac3c204bef32a524b442db877dcd8af9757ddea
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Tue May 15 17:12:17 2018 +1200

    gp_inf: Parse the GptTmpl.inf file which stores security settings
    
    This is NOT an ini file and CANNOT be parsed by Python ConfigParser
    without losing information (it would likely eat meaningful whitespace
    and so should not be done).
    
    There are three main types of settings:
    
     * Name,Mode,ACL
     * key = value
     * registry key and value
    
       Note: This appears as key=value, but registry keys in the general
       case may have = in their names, so we record the entire string in
       order to be as safe as possible.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 4a69308b7a5fa3f14681fd951999500129ee5bea
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Thu May 10 17:15:23 2018 +1200

    gp_csv: Parse the audit.csv file which records audit settings
    
    Based on the setting, the csv will omit certain fields. Using this we
    can later infer as to how to generalize the ACLs and SIDs.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit e27c8689f7fafdeb5f7b5e4fbebe131e056bb7c0
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 9 17:17:47 2018 +1200

    gp_ini: Parse .ini files in SYSVOL
    
    These are fdeploy, scripts + psscripts as well as the GPT.ini at the top
    level. Note that GPT.ini has a different character encoding and we
    specify it here.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 6c5a50779d111fab048a957a5fd1374f07beae1a
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 9 16:21:22 2018 +1200

    gp_pol: Parse the .pol files (PReg) which stored winreg settings
    
    Currently, we do not look inside the .pol files for any settings (and do
    not generalize any so far).
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit aac6cd37808fd79b9ea51bff6501ad575740494f
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Mon May 21 17:30:40 2018 +1200

    gpo: Add a restore command (for backups) from XML
    
    Currently because no parsers have been written, this just copies the old
    files and puts them in their places.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 34453a082ed0ed06cd4e2a7a3c313404fc85ee8e
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Mon May 7 16:03:13 2018 +1200

    gpo: Add a backup command (similar to fetch)
    
    The idea behind this command is that you will eventually backup a number
    of XML files which can be user-editable and have generic entities to be
    later restored in the same domain or a different domain.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 7047f457dc8febec3270a37471e8d9cad52b6dec
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 23 12:39:02 2018 +1200

    gp_parse: Introduce new module for parsing GPO files
    
    This is the default parser which will cause the file to be restored
    as-is -- leaving only an effectively blank XML file as a placeholder.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 8140a7bb762d049dfe0fd84858f7fd5b357351c7
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Fri May 11 16:41:51 2018 +1200

    preg: Use gensize to allow modification of winreg data to be repacked
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit c71ba94cb13f2a2ff18ddabee19e46fb2cf646a3
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Wed May 9 16:21:07 2018 +1200

    preg: Using winreg_Data_GPO instead of DATA_BLOB
    
    We need to make a duplicate in order to have reasonable python bindings.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 463dcc909417f91a576b12b96adfc16e18ffc9a0
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Mon Apr 16 14:53:18 2018 +1200

    preg: Unpack winreg_Data for parsing
    
    It seems that there might be pre-existing endianness issues which would be 
fixed by the ndr_push.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 572fd6319fd60fbca99db42169b80aa0135be058
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Mon Apr 16 13:49:54 2018 +1200

    preg: Build python preg bindings
    
    These will be used in the GPO import/export.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit ea297d0ce382af7f45b176faa3f33f36a921371b
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Mon Apr 16 13:48:16 2018 +1200

    winreg: Add hyper REG_QWORD to parsing routines
    
    This will be useful when exporting registry.pol files.
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 6d52ef8dcfef44c500571f2c62386ba5ae3189a5
Author: Garming Sam <garm...@catalyst.net.nz>
Date:   Fri Jun 8 12:06:08 2018 +1200

    git: Treat .dump files as binary
    
    This means that git grep will no longer show TDB dumps. This can be
    changed at runtime using -a for all to include these files, while -I
    will also omit any references to the files (no Binary file * matches).
    
    Signed-off-by: Garming Sam <garm...@catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

commit 739691fd1e34fda0280d068e1693fa6a2c61f9b6
Author: Andrew Bartlett <abart...@samba.org>
Date:   Fri Aug 17 09:39:46 2018 +1200

    buildtools: Split git ls-files output on newline, not any whitespace
    
    This allows files to have a space in the filename within the Samba git tree.
    
    Signed-off-by: Andrew Bartlett <abart...@samba.org>
    Douglas Bagnall <douglas.bagn...@catalyst.net.nz>

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

Summary of changes:
 .gitattributes                                     |   2 +
 WHATSNEW.txt                                       |  11 +
 buildtools/wafsamba/samba_dist.py                  |   2 +-
 librpc/ABI/ndr-0.1.1.sigs                          | 262 +++++++++++++
 librpc/ABI/ndr-0.1.2.sigs                          | 263 +++++++++++++
 librpc/idl/misc.idl                                |  23 ++
 librpc/idl/preg.idl                                |   9 +-
 librpc/idl/wscript_build                           |   6 +-
 librpc/wscript_build                               |   2 +-
 python/samba/gp_parse/__init__.py                  | 183 +++++++++
 python/samba/gp_parse/gp_aas.py                    |  25 ++
 python/samba/gp_parse/gp_csv.py                    | 172 +++++++++
 python/samba/gp_parse/gp_inf.py                    | 385 +++++++++++++++++++
 python/samba/gp_parse/gp_ini.py                    | 217 +++++++++++
 python/samba/gp_parse/gp_pol.py                    | 148 ++++++++
 python/samba/netcmd/gpo.py                         | 387 ++++++++++++++++++-
 python/samba/tests/samba_tool/gpo.py               | 355 +++++++++++++++++-
 source3/libgpo/gpext/registry.c                    |   4 +-
 source4/librpc/wscript_build                       |   6 +
 .../provisions/generalized-gpo-backup/README       |  19 +
 .../provisions/generalized-gpo-backup/entities     |  13 +
 .../provisions/generalized-gpo-backup/format.dtd   |  58 +++
 .../GPT.INI.SAMBABACKUP                            |   4 +
 .../GPT.INI.xml                                    |  12 +
 .../Windows NT/Audit/audit.csv.SAMBABACKUP         |   3 +
 .../Microsoft/Windows NT/Audit/audit.csv.xml       |  29 ++
 .../Windows NT/SecEdit/GptTmpl.inf.SAMBABACKUP     | Bin 0 -> 2580 bytes
 .../Microsoft/Windows NT/SecEdit/GptTmpl.inf.xml   |  87 +++++
 .../Machine/Registry.pol.SAMBABACKUP               | Bin 0 -> 18426 bytes
 .../Machine/Registry.pol.xml                       | 416 +++++++++++++++++++++
 .../Machine/Scripts/psscripts.ini.SAMBABACKUP      |   0
 .../Machine/Scripts/psscripts.ini.xml              |   1 +
 .../Machine/Scripts/scripts.ini.SAMBABACKUP        | Bin 0 -> 304 bytes
 .../Machine/Scripts/scripts.ini.xml                |  22 ++
 .../Documents & Settings/fdeploy.ini.SAMBABACKUP   |   0
 .../User/Documents & Settings/fdeploy.ini.xml      |   1 +
 .../Documents & Settings/fdeploy1.ini.SAMBABACKUP  | Bin 0 -> 842 bytes
 .../User/Documents & Settings/fdeploy1.ini.xml     |  38 ++
 .../User/Registry.pol.SAMBABACKUP                  | Bin 0 -> 8292 bytes
 .../User/Registry.pol.xml                          | 213 +++++++++++
 .../User/Scripts/scripts.ini.SAMBABACKUP           | Bin 0 -> 122 bytes
 .../User/Scripts/scripts.ini.xml                   |  12 +
 42 files changed, 3376 insertions(+), 14 deletions(-)
 create mode 100644 .gitattributes
 create mode 100644 librpc/ABI/ndr-0.1.1.sigs
 create mode 100644 librpc/ABI/ndr-0.1.2.sigs
 create mode 100644 python/samba/gp_parse/__init__.py
 create mode 100644 python/samba/gp_parse/gp_aas.py
 create mode 100644 python/samba/gp_parse/gp_csv.py
 create mode 100644 python/samba/gp_parse/gp_inf.py
 create mode 100644 python/samba/gp_parse/gp_ini.py
 create mode 100644 python/samba/gp_parse/gp_pol.py
 create mode 100644 source4/selftest/provisions/generalized-gpo-backup/README
 create mode 100644 source4/selftest/provisions/generalized-gpo-backup/entities
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/format.dtd
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/GPT.INI.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/GPT.INI.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Microsoft/Windows
 NT/Audit/audit.csv.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Microsoft/Windows
 NT/Audit/audit.csv.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Microsoft/Windows
 NT/SecEdit/GptTmpl.inf.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Microsoft/Windows
 NT/SecEdit/GptTmpl.inf.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Registry.pol.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Registry.pol.xml
 copy third_party/pep8/testsuite/__init__.py => 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Scripts/psscripts.ini.SAMBABACKUP
 (100%)
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Scripts/psscripts.ini.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Scripts/scripts.ini.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/Machine/Scripts/scripts.ini.xml
 copy third_party/pep8/testsuite/__init__.py => 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Documents
 & Settings/fdeploy.ini.SAMBABACKUP (100%)
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Documents
 & Settings/fdeploy.ini.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Documents
 & Settings/fdeploy1.ini.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Documents
 & Settings/fdeploy1.ini.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Registry.pol.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Registry.pol.xml
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Scripts/scripts.ini.SAMBABACKUP
 create mode 100644 
source4/selftest/provisions/generalized-gpo-backup/policy/{1E1DC8EA-390C-4800-B327-98B56A0AEA5D}/User/Scripts/scripts.ini.xml


Changeset truncated at 500 lines:

diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..7556135
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,2 @@
+*.dump binary
+*.SAMBABACKUP binary
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 39f4002..bdc3df7 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -16,6 +16,17 @@ UPGRADING
 NEW FEATURES/CHANGES
 ====================
 
+GPO Improvements
+----------------
+
+A new 'samba-tool gpo export' command has been added that can export a
+set of Group Policy Objects from a domain in a generalised XML format.
+
+A corresponding 'samba-tool gpo restore' command has been added to
+rebuild the Group Policy Objects from the XML after generalization.
+(The administrator needs to correct the values of XML entities between
+the backup and restore to account for the change in domain).
+
 
 REMOVED FEATURES
 ================
diff --git a/buildtools/wafsamba/samba_dist.py 
b/buildtools/wafsamba/samba_dist.py
index 8d51632..5c931a9 100644
--- a/buildtools/wafsamba/samba_dist.py
+++ b/buildtools/wafsamba/samba_dist.py
@@ -91,7 +91,7 @@ def vcs_dir_contents(path):
         repo = os.path.dirname(repo)
     if repo == "/":
         raise Exception("unsupported or no vcs for %s" % path)
-    return Utils.cmd_output(ls_files_cmd, cwd=cwd, env=env).split()
+    return Utils.cmd_output(ls_files_cmd, cwd=cwd, env=env).split('\n')
 
 
 def dist(appname='', version=''):
diff --git a/librpc/ABI/ndr-0.1.1.sigs b/librpc/ABI/ndr-0.1.1.sigs
new file mode 100644
index 0000000..434e110
--- /dev/null
+++ b/librpc/ABI/ndr-0.1.1.sigs
@@ -0,0 +1,262 @@
+GUID_all_zero: bool (const struct GUID *)
+GUID_buf_string: char *(const struct GUID *, struct GUID_txt_buf *)
+GUID_compare: int (const struct GUID *, const struct GUID *)
+GUID_equal: bool (const struct GUID *, const struct GUID *)
+GUID_from_data_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_ndr_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_string: NTSTATUS (const char *, struct GUID *)
+GUID_hexstring: char *(TALLOC_CTX *, const struct GUID *)
+GUID_random: struct GUID (void)
+GUID_string: char *(TALLOC_CTX *, const struct GUID *)
+GUID_string2: char *(TALLOC_CTX *, const struct GUID *)
+GUID_to_ndr_blob: NTSTATUS (const struct GUID *, TALLOC_CTX *, DATA_BLOB *)
+GUID_zero: struct GUID (void)
+ndr_align_size: size_t (uint32_t, size_t)
+ndr_charset_length: uint32_t (const void *, charset_t)
+ndr_check_array_length: enum ndr_err_code (struct ndr_pull *, void *, uint32_t)
+ndr_check_array_size: enum ndr_err_code (struct ndr_pull *, void *, uint32_t)
+ndr_check_padding: void (struct ndr_pull *, size_t)
+ndr_check_pipe_chunk_trailer: enum ndr_err_code (struct ndr_pull *, int, 
uint32_t)
+ndr_check_string_terminator: enum ndr_err_code (struct ndr_pull *, uint32_t, 
uint32_t)
+ndr_get_array_length: uint32_t (struct ndr_pull *, const void *)
+ndr_get_array_size: uint32_t (struct ndr_pull *, const void *)
+ndr_map_error2errno: int (enum ndr_err_code)
+ndr_map_error2ntstatus: NTSTATUS (enum ndr_err_code)
+ndr_map_error2string: const char *(enum ndr_err_code)
+ndr_policy_handle_empty: bool (const struct policy_handle *)
+ndr_policy_handle_equal: bool (const struct policy_handle *, const struct 
policy_handle *)
+ndr_print_DATA_BLOB: void (struct ndr_print *, const char *, DATA_BLOB)
+ndr_print_GUID: void (struct ndr_print *, const char *, const struct GUID *)
+ndr_print_HRESULT: void (struct ndr_print *, const char *, HRESULT)
+ndr_print_KRB5_EDATA_NTSTATUS: void (struct ndr_print *, const char *, const 
struct KRB5_EDATA_NTSTATUS *)
+ndr_print_NTSTATUS: void (struct ndr_print *, const char *, NTSTATUS)
+ndr_print_NTTIME: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_1sec: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_hyper: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_WERROR: void (struct ndr_print *, const char *, WERROR)
+ndr_print_array_uint8: void (struct ndr_print *, const char *, const uint8_t 
*, uint32_t)
+ndr_print_bad_level: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_bitmap_flag: void (struct ndr_print *, size_t, const char *, 
uint32_t, uint32_t)
+ndr_print_bool: void (struct ndr_print *, const char *, const bool)
+ndr_print_debug: void (ndr_print_fn_t, const char *, void *)
+ndr_print_debug_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_debugc: void (int, ndr_print_fn_t, const char *, void *)
+ndr_print_debugc_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_dlong: void (struct ndr_print *, const char *, int64_t)
+ndr_print_double: void (struct ndr_print *, const char *, double)
+ndr_print_enum: void (struct ndr_print *, const char *, const char *, const 
char *, uint32_t)
+ndr_print_function_debug: void (ndr_print_function_t, const char *, int, void 
*)
+ndr_print_function_string: char *(TALLOC_CTX *, ndr_print_function_t, const 
char *, int, void *)
+ndr_print_get_switch_value: uint32_t (struct ndr_print *, const void *)
+ndr_print_gid_t: void (struct ndr_print *, const char *, gid_t)
+ndr_print_hyper: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_int16: void (struct ndr_print *, const char *, int16_t)
+ndr_print_int32: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int3264: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int8: void (struct ndr_print *, const char *, int8_t)
+ndr_print_ipv4address: void (struct ndr_print *, const char *, const char *)
+ndr_print_ipv6address: void (struct ndr_print *, const char *, const char *)
+ndr_print_ndr_syntax_id: void (struct ndr_print *, const char *, const struct 
ndr_syntax_id *)
+ndr_print_netr_SamDatabaseID: void (struct ndr_print *, const char *, enum 
netr_SamDatabaseID)
+ndr_print_netr_SchannelType: void (struct ndr_print *, const char *, enum 
netr_SchannelType)
+ndr_print_null: void (struct ndr_print *)
+ndr_print_pointer: void (struct ndr_print *, const char *, void *)
+ndr_print_policy_handle: void (struct ndr_print *, const char *, const struct 
policy_handle *)
+ndr_print_printf_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_ptr: void (struct ndr_print *, const char *, const void *)
+ndr_print_set_switch_value: enum ndr_err_code (struct ndr_print *, const void 
*, uint32_t)
+ndr_print_sockaddr_storage: void (struct ndr_print *, const char *, const 
struct sockaddr_storage *)
+ndr_print_string: void (struct ndr_print *, const char *, const char *)
+ndr_print_string_array: void (struct ndr_print *, const char *, const char **)
+ndr_print_string_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_struct: void (struct ndr_print *, const char *, const char *)
+ndr_print_struct_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, 
void *)
+ndr_print_svcctl_ServerType: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_time_t: void (struct ndr_print *, const char *, time_t)
+ndr_print_timespec: void (struct ndr_print *, const char *, const struct 
timespec *)
+ndr_print_timeval: void (struct ndr_print *, const char *, const struct 
timeval *)
+ndr_print_udlong: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_udlongr: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_uid_t: void (struct ndr_print *, const char *, uid_t)
+ndr_print_uint16: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_uint32: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint3264: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint8: void (struct ndr_print *, const char *, uint8_t)
+ndr_print_union: void (struct ndr_print *, const char *, int, const char *)
+ndr_print_union_debug: void (ndr_print_fn_t, const char *, uint32_t, void *)
+ndr_print_union_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, 
uint32_t, void *)
+ndr_print_winreg_Data: void (struct ndr_print *, const char *, const union 
winreg_Data *)
+ndr_print_winreg_Data_GPO: void (struct ndr_print *, const char *, const union 
winreg_Data_GPO *)
+ndr_print_winreg_Type: void (struct ndr_print *, const char *, enum 
winreg_Type)
+ndr_pull_DATA_BLOB: enum ndr_err_code (struct ndr_pull *, int, DATA_BLOB *)
+ndr_pull_GUID: enum ndr_err_code (struct ndr_pull *, int, struct GUID *)
+ndr_pull_HRESULT: enum ndr_err_code (struct ndr_pull *, int, HRESULT *)
+ndr_pull_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, 
struct KRB5_EDATA_NTSTATUS *)
+ndr_pull_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, NTSTATUS *)
+ndr_pull_NTTIME: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_1sec: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_hyper: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_WERROR: enum ndr_err_code (struct ndr_pull *, int, WERROR *)
+ndr_pull_advance: enum ndr_err_code (struct ndr_pull *, uint32_t)
+ndr_pull_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_append: enum ndr_err_code (struct ndr_pull *, DATA_BLOB *)
+ndr_pull_array_length: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_size: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *, 
uint32_t)
+ndr_pull_bytes: enum ndr_err_code (struct ndr_pull *, uint8_t *, uint32_t)
+ndr_pull_charset: enum ndr_err_code (struct ndr_pull *, int, const char **, 
uint32_t, uint8_t, charset_t)
+ndr_pull_charset_to_null: enum ndr_err_code (struct ndr_pull *, int, const 
char **, uint32_t, uint8_t, charset_t)
+ndr_pull_dlong: enum ndr_err_code (struct ndr_pull *, int, int64_t *)
+ndr_pull_double: enum ndr_err_code (struct ndr_pull *, int, double *)
+ndr_pull_enum_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_enum_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_error: enum ndr_err_code (struct ndr_pull *, enum ndr_err_code, const 
char *, ...)
+ndr_pull_generic_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_get_relative_base_offset: uint32_t (struct ndr_pull *)
+ndr_pull_get_switch_value: uint32_t (struct ndr_pull *, const void *)
+ndr_pull_gid_t: enum ndr_err_code (struct ndr_pull *, int, gid_t *)
+ndr_pull_hyper: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_init_blob: struct ndr_pull *(const DATA_BLOB *, TALLOC_CTX *)
+ndr_pull_int16: enum ndr_err_code (struct ndr_pull *, int, int16_t *)
+ndr_pull_int32: enum ndr_err_code (struct ndr_pull *, int, int32_t *)
+ndr_pull_int8: enum ndr_err_code (struct ndr_pull *, int, int8_t *)
+ndr_pull_ipv4address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ipv6address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ndr_syntax_id: enum ndr_err_code (struct ndr_pull *, int, struct 
ndr_syntax_id *)
+ndr_pull_netr_SamDatabaseID: enum ndr_err_code (struct ndr_pull *, int, enum 
netr_SamDatabaseID *)
+ndr_pull_netr_SchannelType: enum ndr_err_code (struct ndr_pull *, int, enum 
netr_SchannelType *)
+ndr_pull_pointer: enum ndr_err_code (struct ndr_pull *, int, void **)
+ndr_pull_policy_handle: enum ndr_err_code (struct ndr_pull *, int, struct 
policy_handle *)
+ndr_pull_pop: enum ndr_err_code (struct ndr_pull *)
+ndr_pull_ref_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_relative_ptr1: enum ndr_err_code (struct ndr_pull *, const void *, 
uint32_t)
+ndr_pull_relative_ptr2: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_relative_ptr_short: enum ndr_err_code (struct ndr_pull *, uint16_t *)
+ndr_pull_restore_relative_base_offset: void (struct ndr_pull *, uint32_t)
+ndr_pull_set_switch_value: enum ndr_err_code (struct ndr_pull *, const void *, 
uint32_t)
+ndr_pull_setup_relative_base_offset1: enum ndr_err_code (struct ndr_pull *, 
const void *, uint32_t)
+ndr_pull_setup_relative_base_offset2: enum ndr_err_code (struct ndr_pull *, 
const void *)
+ndr_pull_steal_switch_value: uint32_t (struct ndr_pull *, const void *)
+ndr_pull_string: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_string_array: enum ndr_err_code (struct ndr_pull *, int, const char 
***)
+ndr_pull_struct_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void 
*, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, 
void *, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all_noalloc: enum ndr_err_code (const DATA_BLOB *, void 
*, ndr_pull_flags_fn_t)
+ndr_pull_subcontext_end: enum ndr_err_code (struct ndr_pull *, struct ndr_pull 
*, size_t, ssize_t)
+ndr_pull_subcontext_start: enum ndr_err_code (struct ndr_pull *, struct 
ndr_pull **, size_t, ssize_t)
+ndr_pull_svcctl_ServerType: enum ndr_err_code (struct ndr_pull *, int, 
uint32_t *)
+ndr_pull_time_t: enum ndr_err_code (struct ndr_pull *, int, time_t *)
+ndr_pull_timespec: enum ndr_err_code (struct ndr_pull *, int, struct timespec 
*)
+ndr_pull_timeval: enum ndr_err_code (struct ndr_pull *, int, struct timeval *)
+ndr_pull_trailer_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_udlong: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_udlongr: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_uid_t: enum ndr_err_code (struct ndr_pull *, int, uid_t *)
+ndr_pull_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint3264: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_union_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_union_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void 
*, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_union_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, 
void *, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_winreg_Data: enum ndr_err_code (struct ndr_pull *, int, union 
winreg_Data *)
+ndr_pull_winreg_Data_GPO: enum ndr_err_code (struct ndr_pull *, int, union 
winreg_Data_GPO *)
+ndr_pull_winreg_Type: enum ndr_err_code (struct ndr_pull *, int, enum 
winreg_Type *)
+ndr_push_DATA_BLOB: enum ndr_err_code (struct ndr_push *, int, DATA_BLOB)
+ndr_push_GUID: enum ndr_err_code (struct ndr_push *, int, const struct GUID *)
+ndr_push_HRESULT: enum ndr_err_code (struct ndr_push *, int, HRESULT)
+ndr_push_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, const 
struct KRB5_EDATA_NTSTATUS *)
+ndr_push_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, NTSTATUS)
+ndr_push_NTTIME: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_1sec: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_hyper: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_WERROR: enum ndr_err_code (struct ndr_push *, int, WERROR)
+ndr_push_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_array_uint8: enum ndr_err_code (struct ndr_push *, int, const uint8_t 
*, uint32_t)
+ndr_push_blob: DATA_BLOB (struct ndr_push *)
+ndr_push_bytes: enum ndr_err_code (struct ndr_push *, const uint8_t *, 
uint32_t)
+ndr_push_charset: enum ndr_err_code (struct ndr_push *, int, const char *, 
uint32_t, uint8_t, charset_t)
+ndr_push_charset_to_null: enum ndr_err_code (struct ndr_push *, int, const 
char *, uint32_t, uint8_t, charset_t)
+ndr_push_dlong: enum ndr_err_code (struct ndr_push *, int, int64_t)
+ndr_push_double: enum ndr_err_code (struct ndr_push *, int, double)
+ndr_push_enum_uint16: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_enum_uint1632: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_enum_uint32: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_enum_uint8: enum ndr_err_code (struct ndr_push *, int, uint8_t)
+ndr_push_error: enum ndr_err_code (struct ndr_push *, enum ndr_err_code, const 
char *, ...)
+ndr_push_expand: enum ndr_err_code (struct ndr_push *, uint32_t)
+ndr_push_full_ptr: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_get_relative_base_offset: uint32_t (struct ndr_push *)
+ndr_push_get_switch_value: uint32_t (struct ndr_push *, const void *)
+ndr_push_gid_t: enum ndr_err_code (struct ndr_push *, int, gid_t)
+ndr_push_hyper: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_init_ctx: struct ndr_push *(TALLOC_CTX *)
+ndr_push_int16: enum ndr_err_code (struct ndr_push *, int, int16_t)
+ndr_push_int32: enum ndr_err_code (struct ndr_push *, int, int32_t)
+ndr_push_int8: enum ndr_err_code (struct ndr_push *, int, int8_t)
+ndr_push_ipv4address: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_ipv6address: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_ndr_syntax_id: enum ndr_err_code (struct ndr_push *, int, const 
struct ndr_syntax_id *)
+ndr_push_netr_SamDatabaseID: enum ndr_err_code (struct ndr_push *, int, enum 
netr_SamDatabaseID)
+ndr_push_netr_SchannelType: enum ndr_err_code (struct ndr_push *, int, enum 
netr_SchannelType)
+ndr_push_pipe_chunk_trailer: enum ndr_err_code (struct ndr_push *, int, 
uint32_t)
+ndr_push_pointer: enum ndr_err_code (struct ndr_push *, int, void *)
+ndr_push_policy_handle: enum ndr_err_code (struct ndr_push *, int, const 
struct policy_handle *)
+ndr_push_ref_ptr: enum ndr_err_code (struct ndr_push *)
+ndr_push_relative_ptr1: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_relative_ptr2_end: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_relative_ptr2_start: enum ndr_err_code (struct ndr_push *, const void 
*)
+ndr_push_restore_relative_base_offset: void (struct ndr_push *, uint32_t)
+ndr_push_set_switch_value: enum ndr_err_code (struct ndr_push *, const void *, 
uint32_t)
+ndr_push_setup_relative_base_offset1: enum ndr_err_code (struct ndr_push *, 
const void *, uint32_t)
+ndr_push_setup_relative_base_offset2: enum ndr_err_code (struct ndr_push *, 
const void *)
+ndr_push_short_relative_ptr1: enum ndr_err_code (struct ndr_push *, const void 
*)
+ndr_push_short_relative_ptr2: enum ndr_err_code (struct ndr_push *, const void 
*)
+ndr_push_string: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_string_array: enum ndr_err_code (struct ndr_push *, int, const char 
**)
+ndr_push_struct_blob: enum ndr_err_code (DATA_BLOB *, TALLOC_CTX *, const void 
*, ndr_push_flags_fn_t)
+ndr_push_struct_into_fixed_blob: enum ndr_err_code (DATA_BLOB *, const void *, 
ndr_push_flags_fn_t)
+ndr_push_subcontext_end: enum ndr_err_code (struct ndr_push *, struct ndr_push 
*, size_t, ssize_t)
+ndr_push_subcontext_start: enum ndr_err_code (struct ndr_push *, struct 
ndr_push **, size_t, ssize_t)
+ndr_push_svcctl_ServerType: enum ndr_err_code (struct ndr_push *, int, 
uint32_t)
+ndr_push_time_t: enum ndr_err_code (struct ndr_push *, int, time_t)
+ndr_push_timespec: enum ndr_err_code (struct ndr_push *, int, const struct 
timespec *)
+ndr_push_timeval: enum ndr_err_code (struct ndr_push *, int, const struct 
timeval *)
+ndr_push_trailer_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_udlong: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_udlongr: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_uid_t: enum ndr_err_code (struct ndr_push *, int, uid_t)
+ndr_push_uint16: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_uint1632: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_uint32: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_uint3264: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_uint8: enum ndr_err_code (struct ndr_push *, int, uint8_t)
+ndr_push_union_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_union_blob: enum ndr_err_code (DATA_BLOB *, TALLOC_CTX *, void *, 
uint32_t, ndr_push_flags_fn_t)
+ndr_push_unique_ptr: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_winreg_Data: enum ndr_err_code (struct ndr_push *, int, const union 
winreg_Data *)
+ndr_push_winreg_Data_GPO: enum ndr_err_code (struct ndr_push *, int, const 
union winreg_Data_GPO *)
+ndr_push_winreg_Type: enum ndr_err_code (struct ndr_push *, int, enum 
winreg_Type)
+ndr_push_zero: enum ndr_err_code (struct ndr_push *, uint32_t)
+ndr_set_flags: void (uint32_t *, uint32_t)
+ndr_size_DATA_BLOB: uint32_t (int, const DATA_BLOB *, int)
+ndr_size_GUID: size_t (const struct GUID *, int)
+ndr_size_string: uint32_t (int, const char * const *, int)
+ndr_size_string_array: size_t (const char **, uint32_t, int)
+ndr_size_struct: size_t (const void *, int, ndr_push_flags_fn_t)
+ndr_size_union: size_t (const void *, int, uint32_t, ndr_push_flags_fn_t)
+ndr_string_array_size: size_t (struct ndr_push *, const char *)
+ndr_string_length: uint32_t (const void *, uint32_t)
+ndr_syntax_id_equal: bool (const struct ndr_syntax_id *, const struct 
ndr_syntax_id *)
+ndr_syntax_id_from_string: bool (const char *, struct ndr_syntax_id *)
+ndr_syntax_id_null: uuid = {time_low = 0, time_mid = 0, time_hi_and_version = 
0, clock_seq = "\000", node = "\000\000\000\000\000"}, if_version = 0
+ndr_syntax_id_to_string: char *(TALLOC_CTX *, const struct ndr_syntax_id *)
+ndr_token_peek: uint32_t (struct ndr_token_list *, const void *)
+ndr_token_retrieve: enum ndr_err_code (struct ndr_token_list *, const void *, 
uint32_t *)
+ndr_token_retrieve_cmp_fn: enum ndr_err_code (struct ndr_token_list *, const 
void *, uint32_t *, comparison_fn_t, bool)
+ndr_token_store: enum ndr_err_code (TALLOC_CTX *, struct ndr_token_list *, 
const void *, uint32_t)
+ndr_transfer_syntax_ndr: uuid = {time_low = 2324192516, time_mid = 7403, 
time_hi_and_version = 4553, clock_seq = "\237\350", node = "\b\000+\020H`"}, 
if_version = 2
+ndr_transfer_syntax_ndr64: uuid = {time_low = 1903232307, time_mid = 48826, 
time_hi_and_version = 18743, clock_seq = "\203\031", node = 
"\265\333\357\234\314\066"}, if_version = 1
diff --git a/librpc/ABI/ndr-0.1.2.sigs b/librpc/ABI/ndr-0.1.2.sigs
new file mode 100644
index 0000000..bf9fdfc
--- /dev/null
+++ b/librpc/ABI/ndr-0.1.2.sigs
@@ -0,0 +1,263 @@
+GUID_all_zero: bool (const struct GUID *)
+GUID_buf_string: char *(const struct GUID *, struct GUID_txt_buf *)
+GUID_compare: int (const struct GUID *, const struct GUID *)
+GUID_equal: bool (const struct GUID *, const struct GUID *)
+GUID_from_data_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_ndr_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_string: NTSTATUS (const char *, struct GUID *)
+GUID_hexstring: char *(TALLOC_CTX *, const struct GUID *)
+GUID_random: struct GUID (void)
+GUID_string: char *(TALLOC_CTX *, const struct GUID *)
+GUID_string2: char *(TALLOC_CTX *, const struct GUID *)
+GUID_to_ndr_blob: NTSTATUS (const struct GUID *, TALLOC_CTX *, DATA_BLOB *)
+GUID_zero: struct GUID (void)
+ndr_align_size: size_t (uint32_t, size_t)
+ndr_charset_length: uint32_t (const void *, charset_t)
+ndr_check_array_length: enum ndr_err_code (struct ndr_pull *, void *, uint32_t)
+ndr_check_array_size: enum ndr_err_code (struct ndr_pull *, void *, uint32_t)
+ndr_check_padding: void (struct ndr_pull *, size_t)
+ndr_check_pipe_chunk_trailer: enum ndr_err_code (struct ndr_pull *, int, 
uint32_t)
+ndr_check_string_terminator: enum ndr_err_code (struct ndr_pull *, uint32_t, 
uint32_t)
+ndr_get_array_length: uint32_t (struct ndr_pull *, const void *)
+ndr_get_array_size: uint32_t (struct ndr_pull *, const void *)
+ndr_map_error2errno: int (enum ndr_err_code)
+ndr_map_error2ntstatus: NTSTATUS (enum ndr_err_code)
+ndr_map_error2string: const char *(enum ndr_err_code)
+ndr_policy_handle_empty: bool (const struct policy_handle *)
+ndr_policy_handle_equal: bool (const struct policy_handle *, const struct 
policy_handle *)
+ndr_print_DATA_BLOB: void (struct ndr_print *, const char *, DATA_BLOB)
+ndr_print_GUID: void (struct ndr_print *, const char *, const struct GUID *)
+ndr_print_HRESULT: void (struct ndr_print *, const char *, HRESULT)
+ndr_print_KRB5_EDATA_NTSTATUS: void (struct ndr_print *, const char *, const 
struct KRB5_EDATA_NTSTATUS *)
+ndr_print_NTSTATUS: void (struct ndr_print *, const char *, NTSTATUS)
+ndr_print_NTTIME: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_1sec: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_hyper: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_WERROR: void (struct ndr_print *, const char *, WERROR)
+ndr_print_array_uint8: void (struct ndr_print *, const char *, const uint8_t 
*, uint32_t)
+ndr_print_bad_level: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_bitmap_flag: void (struct ndr_print *, size_t, const char *, 
uint32_t, uint32_t)
+ndr_print_bool: void (struct ndr_print *, const char *, const bool)
+ndr_print_debug: void (ndr_print_fn_t, const char *, void *)
+ndr_print_debug_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_debugc: void (int, ndr_print_fn_t, const char *, void *)
+ndr_print_debugc_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_dlong: void (struct ndr_print *, const char *, int64_t)
+ndr_print_double: void (struct ndr_print *, const char *, double)
+ndr_print_enum: void (struct ndr_print *, const char *, const char *, const 
char *, uint32_t)
+ndr_print_function_debug: void (ndr_print_function_t, const char *, int, void 
*)
+ndr_print_function_string: char *(TALLOC_CTX *, ndr_print_function_t, const 
char *, int, void *)
+ndr_print_get_switch_value: uint32_t (struct ndr_print *, const void *)
+ndr_print_gid_t: void (struct ndr_print *, const char *, gid_t)
+ndr_print_hyper: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_int16: void (struct ndr_print *, const char *, int16_t)
+ndr_print_int32: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int3264: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int8: void (struct ndr_print *, const char *, int8_t)
+ndr_print_ipv4address: void (struct ndr_print *, const char *, const char *)
+ndr_print_ipv6address: void (struct ndr_print *, const char *, const char *)
+ndr_print_ndr_syntax_id: void (struct ndr_print *, const char *, const struct 
ndr_syntax_id *)
+ndr_print_netr_SamDatabaseID: void (struct ndr_print *, const char *, enum 
netr_SamDatabaseID)
+ndr_print_netr_SchannelType: void (struct ndr_print *, const char *, enum 
netr_SchannelType)
+ndr_print_null: void (struct ndr_print *)
+ndr_print_pointer: void (struct ndr_print *, const char *, void *)
+ndr_print_policy_handle: void (struct ndr_print *, const char *, const struct 
policy_handle *)
+ndr_print_printf_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_ptr: void (struct ndr_print *, const char *, const void *)
+ndr_print_set_switch_value: enum ndr_err_code (struct ndr_print *, const void 
*, uint32_t)
+ndr_print_sockaddr_storage: void (struct ndr_print *, const char *, const 
struct sockaddr_storage *)
+ndr_print_string: void (struct ndr_print *, const char *, const char *)
+ndr_print_string_array: void (struct ndr_print *, const char *, const char **)
+ndr_print_string_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_struct: void (struct ndr_print *, const char *, const char *)
+ndr_print_struct_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, 
void *)
+ndr_print_svcctl_ServerType: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_time_t: void (struct ndr_print *, const char *, time_t)
+ndr_print_timespec: void (struct ndr_print *, const char *, const struct 
timespec *)
+ndr_print_timeval: void (struct ndr_print *, const char *, const struct 
timeval *)
+ndr_print_udlong: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_udlongr: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_uid_t: void (struct ndr_print *, const char *, uid_t)
+ndr_print_uint16: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_uint32: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint3264: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint8: void (struct ndr_print *, const char *, uint8_t)
+ndr_print_union: void (struct ndr_print *, const char *, int, const char *)
+ndr_print_union_debug: void (ndr_print_fn_t, const char *, uint32_t, void *)
+ndr_print_union_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, 
uint32_t, void *)
+ndr_print_winreg_Data: void (struct ndr_print *, const char *, const union 
winreg_Data *)
+ndr_print_winreg_Data_GPO: void (struct ndr_print *, const char *, const union 
winreg_Data_GPO *)
+ndr_print_winreg_Type: void (struct ndr_print *, const char *, enum 
winreg_Type)
+ndr_pull_DATA_BLOB: enum ndr_err_code (struct ndr_pull *, int, DATA_BLOB *)
+ndr_pull_GUID: enum ndr_err_code (struct ndr_pull *, int, struct GUID *)
+ndr_pull_HRESULT: enum ndr_err_code (struct ndr_pull *, int, HRESULT *)
+ndr_pull_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, 
struct KRB5_EDATA_NTSTATUS *)
+ndr_pull_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, NTSTATUS *)
+ndr_pull_NTTIME: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_1sec: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_hyper: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_WERROR: enum ndr_err_code (struct ndr_pull *, int, WERROR *)
+ndr_pull_advance: enum ndr_err_code (struct ndr_pull *, uint32_t)
+ndr_pull_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_append: enum ndr_err_code (struct ndr_pull *, DATA_BLOB *)
+ndr_pull_array_length: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_size: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *, 
uint32_t)
+ndr_pull_bytes: enum ndr_err_code (struct ndr_pull *, uint8_t *, uint32_t)
+ndr_pull_charset: enum ndr_err_code (struct ndr_pull *, int, const char **, 
uint32_t, uint8_t, charset_t)
+ndr_pull_charset_to_null: enum ndr_err_code (struct ndr_pull *, int, const 
char **, uint32_t, uint8_t, charset_t)
+ndr_pull_dlong: enum ndr_err_code (struct ndr_pull *, int, int64_t *)
+ndr_pull_double: enum ndr_err_code (struct ndr_pull *, int, double *)
+ndr_pull_enum_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_enum_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_error: enum ndr_err_code (struct ndr_pull *, enum ndr_err_code, const 
char *, ...)
+ndr_pull_generic_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_get_relative_base_offset: uint32_t (struct ndr_pull *)
+ndr_pull_get_switch_value: uint32_t (struct ndr_pull *, const void *)
+ndr_pull_gid_t: enum ndr_err_code (struct ndr_pull *, int, gid_t *)
+ndr_pull_hyper: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_init_blob: struct ndr_pull *(const DATA_BLOB *, TALLOC_CTX *)
+ndr_pull_int16: enum ndr_err_code (struct ndr_pull *, int, int16_t *)
+ndr_pull_int32: enum ndr_err_code (struct ndr_pull *, int, int32_t *)
+ndr_pull_int8: enum ndr_err_code (struct ndr_pull *, int, int8_t *)
+ndr_pull_ipv4address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ipv6address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ndr_syntax_id: enum ndr_err_code (struct ndr_pull *, int, struct 
ndr_syntax_id *)
+ndr_pull_netr_SamDatabaseID: enum ndr_err_code (struct ndr_pull *, int, enum 
netr_SamDatabaseID *)
+ndr_pull_netr_SchannelType: enum ndr_err_code (struct ndr_pull *, int, enum 
netr_SchannelType *)
+ndr_pull_pointer: enum ndr_err_code (struct ndr_pull *, int, void **)
+ndr_pull_policy_handle: enum ndr_err_code (struct ndr_pull *, int, struct 
policy_handle *)
+ndr_pull_pop: enum ndr_err_code (struct ndr_pull *)
+ndr_pull_ref_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_relative_ptr1: enum ndr_err_code (struct ndr_pull *, const void *, 
uint32_t)
+ndr_pull_relative_ptr2: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_relative_ptr_short: enum ndr_err_code (struct ndr_pull *, uint16_t *)
+ndr_pull_restore_relative_base_offset: void (struct ndr_pull *, uint32_t)
+ndr_pull_set_switch_value: enum ndr_err_code (struct ndr_pull *, const void *, 
uint32_t)
+ndr_pull_setup_relative_base_offset1: enum ndr_err_code (struct ndr_pull *, 
const void *, uint32_t)
+ndr_pull_setup_relative_base_offset2: enum ndr_err_code (struct ndr_pull *, 
const void *)
+ndr_pull_steal_switch_value: uint32_t (struct ndr_pull *, const void *)
+ndr_pull_string: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_string_array: enum ndr_err_code (struct ndr_pull *, int, const char 
***)
+ndr_pull_struct_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void 
*, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, 
void *, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all_noalloc: enum ndr_err_code (const DATA_BLOB *, void 
*, ndr_pull_flags_fn_t)
+ndr_pull_subcontext_end: enum ndr_err_code (struct ndr_pull *, struct ndr_pull 
*, size_t, ssize_t)
+ndr_pull_subcontext_start: enum ndr_err_code (struct ndr_pull *, struct 
ndr_pull **, size_t, ssize_t)
+ndr_pull_svcctl_ServerType: enum ndr_err_code (struct ndr_pull *, int, 
uint32_t *)
+ndr_pull_time_t: enum ndr_err_code (struct ndr_pull *, int, time_t *)
+ndr_pull_timespec: enum ndr_err_code (struct ndr_pull *, int, struct timespec 
*)
+ndr_pull_timeval: enum ndr_err_code (struct ndr_pull *, int, struct timeval *)
+ndr_pull_trailer_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_udlong: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_udlongr: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_uid_t: enum ndr_err_code (struct ndr_pull *, int, uid_t *)
+ndr_pull_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint3264: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_union_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_union_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void 
*, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_union_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, 
void *, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_winreg_Data: enum ndr_err_code (struct ndr_pull *, int, union 
winreg_Data *)
+ndr_pull_winreg_Data_GPO: enum ndr_err_code (struct ndr_pull *, int, union 
winreg_Data_GPO *)
+ndr_pull_winreg_Type: enum ndr_err_code (struct ndr_pull *, int, enum 
winreg_Type *)
+ndr_push_DATA_BLOB: enum ndr_err_code (struct ndr_push *, int, DATA_BLOB)
+ndr_push_GUID: enum ndr_err_code (struct ndr_push *, int, const struct GUID *)
+ndr_push_HRESULT: enum ndr_err_code (struct ndr_push *, int, HRESULT)
+ndr_push_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, const 
struct KRB5_EDATA_NTSTATUS *)
+ndr_push_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, NTSTATUS)
+ndr_push_NTTIME: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_1sec: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_hyper: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_WERROR: enum ndr_err_code (struct ndr_push *, int, WERROR)
+ndr_push_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_array_uint8: enum ndr_err_code (struct ndr_push *, int, const uint8_t 
*, uint32_t)
+ndr_push_blob: DATA_BLOB (struct ndr_push *)
+ndr_push_bytes: enum ndr_err_code (struct ndr_push *, const uint8_t *, 
uint32_t)
+ndr_push_charset: enum ndr_err_code (struct ndr_push *, int, const char *, 
uint32_t, uint8_t, charset_t)
+ndr_push_charset_to_null: enum ndr_err_code (struct ndr_push *, int, const 
char *, uint32_t, uint8_t, charset_t)
+ndr_push_dlong: enum ndr_err_code (struct ndr_push *, int, int64_t)


-- 
Samba Shared Repository

Reply via email to