[SCM] Samba Shared Repository - branch master updated -
bdd80734c977336b09f64cd55d76815de49a5fee
Jelmer Vernooij
jelmer at samba.org
Wed Oct 1 16:01:01 GMT 2008
The branch, master has been updated
via bdd80734c977336b09f64cd55d76815de49a5fee (commit)
via 90d1481cf6b100988f9a6157674d03ed677f280f (commit)
via d56a81f60a820e6a4a3f2617c4fdd4f88e7853cd (commit)
from c164ff2be5f9af7cc83e43d8c54b54186444fac0 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit bdd80734c977336b09f64cd55d76815de49a5fee
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Oct 1 17:29:16 2008 +0200
Fix header.
commit 90d1481cf6b100988f9a6157674d03ed677f280f
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Oct 1 17:28:12 2008 +0200
Fix formatting to be compatible with ReST.
commit d56a81f60a820e6a4a3f2617c4fdd4f88e7853cd
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Oct 1 17:27:42 2008 +0200
Update to refer to 3 and 4, not just Samba 3.
-----------------------------------------------------------------------
Summary of changes:
README.Coding | 65 +++++++++++++++++++++++++++----------------------------
prog_guide4.txt | 31 ++++++++++++++-----------
2 files changed, 49 insertions(+), 47 deletions(-)
Changeset truncated at 500 lines:
diff --git a/README.Coding b/README.Coding
index 8063ae8..c1b6641 100644
--- a/README.Coding
+++ b/README.Coding
@@ -1,6 +1,7 @@
-##
-## Coding conventions in the Samba 3 tree
-##
+Coding conventions in the Samba tree
+------------------------------------
+
+.. contents::
===========
Quick Start
@@ -14,15 +15,13 @@ style should never outweigh coding itself and so the the guidelines
described here are hopefully easy enough to follow as they are very
common and supported by tools and editors.
-The basic style, also mentioned in the SAMBA_4_0/prog_guide.txt is the
-Linux kernel coding style (See Documentation/CodingStyle in the kernel
-source tree). The closely matches what most Samba developers use already
-anyways.
+The basic style, also mentioned in prog_guide4.txt, is the Linux kernel coding
+style (See Documentation/CodingStyle in the kernel source tree). This closely
+matches what most Samba developers use already anyways.
But to save you the trouble of reading the Linux kernel style guide, here
are the highlights.
-
* Maximum Line Width is 80 Characters
The reason is not for people with low-res screens but rather sticking
to 80 columns prevents you from easily nesting more than one level of
@@ -59,14 +58,14 @@ Vi
--
(Thanks to SATOH Fumiyasu <fumiyas at osstech.jp> for these hints):
-For the basic vi editor including with all variants of *nix, add the
+For the basic vi editor including with all variants of \*nix, add the
following to $HOME/.exrc:
set tabstop=8
set shiftwidth=8
For Vim, the following settings in $HOME/.vimrc will also deal with
-displaying trailing whitespace:
+displaying trailing whitespace::
if has("syntax") && (&t_Co > 2 || has("gui_running"))
syntax on
@@ -91,7 +90,7 @@ FAQ & Statement Reference
Comments
--------
-Comments should always use the standard C syntax. I.e. /* ... */. C++
+Comments should always use the standard C syntax. C++
style comments are not currently allowed.
@@ -145,7 +144,7 @@ The exception to the ending rule is when the closing brace is followed by
another language keyword such as else or the closing while in a do..while
loop.
-Good examples:
+Good examples::
if (x == 1) {
printf("good\n");
@@ -162,7 +161,7 @@ Good examples:
printf("also good\n");
} while (1);
-Bad examples:
+Bad examples::
while (1)
{
@@ -177,29 +176,29 @@ evil, they can greatly enhance readability and reduce memory leaks when used
as the single exit point from a function. But in no Samba world what so ever
is a goto outside of a function or block of code a good idea.
-Good Examples:
-
-int function foo(int y)
-{
- int *z = NULL;
- int ret = 0;
+Good Examples::
- if ( y < 10 ) {
- z = malloc(sizeof(int)*y);
- if (!z) {
- ret = 1;
- goto done;
+ int function foo(int y)
+ {
+ int *z = NULL;
+ int ret = 0;
+
+ if ( y < 10 ) {
+ z = malloc(sizeof(int)*y);
+ if (!z) {
+ ret = 1;
+ goto done;
+ }
}
- }
- print("Allocated %d elements.\n", y);
+ print("Allocated %d elements.\n", y);
- done:
- if (z)
- free(z);
+ done:
+ if (z)
+ free(z);
- return ret;
-}
+ return ret;
+ }
Checking Pointer Values
@@ -207,13 +206,13 @@ Checking Pointer Values
When invoking functions that return pointer values, either of the following
are acceptable. Use you best judgement and choose the more readable option.
-Remember that many other people will review it.
+Remember that many other people will review it.::
if ((x = malloc(sizeof(short)*10)) == NULL ) {
fprintf(stderr, "Unable to alloc memory!\n");
}
-or
+or::
x = malloc(sizeof(short)*10);
if (!x) {
diff --git a/prog_guide4.txt b/prog_guide4.txt
index 2f5be5f..8d6ff56 100644
--- a/prog_guide4.txt
+++ b/prog_guide4.txt
@@ -5,7 +5,9 @@ FROM A FEW PEOPLE. DON'T TAKE THIS AS THE FINAL VERSION YET.
Samba4 Programming Guide
-------------------------
+========================
+
+.. contents::
The internals of Samba4 are quite different from previous versions of
Samba, so even if you are an experienced Samba developer please take
@@ -144,8 +146,7 @@ data is a bug waiting to happen.
Static data is evil as it has the following consequences:
- it makes code much less likely to be thread-safe
- it makes code much less likely to be recursion-safe
-- it leads to subtle side effects when the same code is called from
- multiple places
+- it leads to subtle side effects when the same code is called from multiple places
- doesn't play well with shared libraries or plugins
Static data is particularly evil in library code (such as our internal
@@ -273,9 +274,9 @@ generating the right offsets.
The same rule applies to strings. In many places in the SMB and MSRPC
protocols complex strings are used on the wire, with complex rules
about padding, format, alighment, termination etc. None of that
-information is useful to a high level calling routine or to a backend
-- its all just so much wire fluff. So, in Samba4 these strings are
-just "char *" and are always in our internal multi-byte format (which
+information is useful to a high level calling routine or to a backend - its
+all just so much wire fluff. So, in Samba4 these strings are
+just "char \*" and are always in our internal multi-byte format (which
is usually UTF8). It is up to the parse functions to worry about
translating the format and getting the padding right.
@@ -580,13 +581,17 @@ DCERPC Handles
The various handles that are used in the RPC servers should be created and
fetch using the dcesrv_handle_* functions.
-Use dcesrv_handle_new(struct dcesrv_connection *, uint8 handle_type) to obtain
+Use dcesrv_handle_new(struct dcesrv_connection \*, uint8 handle_type) to obtain
a new handle of the specified type. Handle types are unique within each
pipe.
-The handle can later be fetched again using
-struct dcesrv_handle *dcesrv_handle_fetch(struct dcesrv_connection *dce_conn, struct policy_handle *p, uint8 handle_type)
-and destroyed by dcesrv_handle_destroy(struct dcesrv_handle *).
+The handle can later be fetched again using::
+
+ struct dcesrv_handle *dcesrv_handle_fetch(struct dcesrv_connection *dce_conn, struct policy_handle *p, uint8 handle_type)
+
+and destroyed by::
+
+ dcesrv_handle_destroy(struct dcesrv_handle *).
User data should be stored in the 'data' member of the dcesrv_handle struct.
@@ -765,12 +770,10 @@ BUGS:
no 137 resolution not possible
should not fallback to anon when pass supplied
should check pass-thu cap bit, and skip lots of tests
- possibly allow the test suite to say "allow oversized replies" for
- trans2 and other calls
+ possibly allow the test suite to say "allow oversized replies" for trans2 and other calls
handle servers that don't have the setattre call in torture
add max file coponent length test and max path len test
- check for alloc failure in all core reply.c and trans2.c code where
- allocation size depends on client parameter
+ check for alloc failure in all core reply.c and trans2.c code where allocation size depends on client parameter
case-insenstive idea:
all filenames on disk lowercase
--
Samba Shared Repository
More information about the samba-cvs
mailing list