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

« back to all changes in this revision

Viewing changes to source/pidl/README

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

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Introduction:
 
2
=============
 
3
This directory contains the source code of the pidl (Perl IDL)
 
4
compiler for Samba 4.
 
5
 
 
6
The main sources for pidl are available by Subversion on
 
7
svn://svnanon.samba.org/samba/branches/SAMBA_4_0/source/pidl
 
8
 
 
9
Pidl works by building a parse tree from a .pidl file (a simple
 
10
dump of it's internal parse tree) or a .idl file
 
11
(a file format mostly like the IDL file format midl uses).
 
12
The IDL file parser is in idl.yp (a yacc file converted to
 
13
perl code by yapp)
 
14
 
 
15
After a parse tree is present, pidl will call one of it's backends
 
16
(which one depends on the options given on the command-line). Here is
 
17
a list of current backends:
 
18
 
 
19
Standalone installation:
 
20
========================
 
21
Run Makefile.PL to generate the Makefile.
 
22
 
 
23
Then run "make install" (as root) to install.
 
24
 
 
25
Internals overview:
 
26
===================
 
27
 
 
28
-- Generic --
 
29
Parse::Pidl::Dump - Converts the parse tree back to an IDL file
 
30
Parse::Pidl::Samba4::Header - Generates header file with data structures defined in IDL file
 
31
Parse::Pidl::NDR - Generates intermediate datastructures for use by NDR parses/generators
 
32
Parse::Pidl::ODL - Generates IDL structures from ODL structures for use in the NDR parser generator
 
33
Parse::Pidl::Test - Utility functions for use in pidl's testsuite
 
34
 
 
35
-- Samba NDR --
 
36
Parse::Pidl::Samba4::NDR::Client - Generates client call functions in C using the NDR parser
 
37
Parse::Pidl::Samba4::SWIG - Generates SWIG interface files (.i)
 
38
Parse::Pidl::Samba4::NDR::Parser - Generates pull/push functions for parsing NDR
 
39
Parse::Pidl::Samba4::NDR::Server - Generates server side implementation in C
 
40
Parse::Pidl::Samba4::TDR - Parser generator for the "Trivial Data Representation"
 
41
Parse::Pidl::Samba4::Template - Generates stubs in C for server implementation
 
42
Parse::Pidl::Samba4::EJS - Generates bindings for Embedded JavaScript (EJS)
 
43
Parse::Pidl::Samba4::Python - Generates bindings for Python
 
44
 
 
45
-- Samba COM / DCOM --
 
46
Parse::Pidl::Samba4::COM::Proxy - Generates proxy object for DCOM (client-side)
 
47
Parse::Pidl::Samba4::COM::Stub - Generates stub call handler for DCOM (server-side)
 
48
Parse::Pidl::Samba4::COM::Header - Generates headers for COM
 
49
 
 
50
-- Wireshark --
 
51
Parse::Pidl::Wireshark::NDR - Generates a parser for the Wireshark network sniffer
 
52
Parse::Pidl::Wireshark::Conformance - Reads conformance files containing additional data for generating Wireshark parsers
 
53
 
 
54
-- Utility modules --
 
55
Parse::Pidl::Util - Misc utility functions used by *.pm and pidl.pl
 
56
Parse::Pidl::Typelist - Utility functions for keeping track of known types and their representation in C
 
57
 
 
58
Tips for hacking on pidl:
 
59
 - Look at the pidl's parse tree by using the --keep option and looking
 
60
   at the generated .pidl file.
 
61
 - The various backends have a lot in common, if you don't understand how one
 
62
   implements something, look at the others
 
63
 - See pidl(1) and the documentation on midl
 
64
 - See 'info bison' and yapp(1) for information on the file format of idl.yp