r5475: Move some existing and new type information functions to typelist.pm
[samba.git] / prog_guide.txt
index 8ab96fb1012d6b0fec2364391d249010659b2c52..d4a170b278e07c53d57c2c270db565470eaa64c0 100644 (file)
@@ -193,8 +193,9 @@ in the data and bss columns in "size" anyway (it will be included in
 How to use talloc
 -----------------
 
-Please see the separate document, talloc_guide.txt in this
-directory. You _must_ read this if you want to program in Samba4.
+Please see the separate document, source/lib/talloc/talloc_guide.txt
+You _must_ read this if you want to program in Samba4.
+
 
 Interface Structures
 --------------------
@@ -231,7 +232,7 @@ msrpc code from Samba3", and while to some extent this is true there
 are extremely important differences in the approach that are worth
 pointing out.
 
-In the Samba3 msrpc code we used explicit parse strucrures for all
+In the Samba3 msrpc code we used explicit parse structures for all
 msrpc functions. The problem is that we didn't just put all of the
 real variables in these structures, we also put in all the artifacts
 as well. A good example is the security descriptor strucrure that
@@ -262,7 +263,7 @@ parser where to find the following four variables, but they should
 *NOT* be in the interface structure.
 
 In Samba3 there were unwritten rules about which variables in a
-strucrure a high level caller has to fill in and which ones are filled
+structure a high level caller has to fill in and which ones are filled
 in by the marshalling code. In Samba4 those rules are gone, because
 the redundent artifact variables are gone. The high level caller just
 sets up the real variables and the marshalling code worries about
@@ -539,30 +540,33 @@ will be auto-determined.
 
 other recognised flags are:
 
-  sign : enable ntlmssp signing
-  seal : enable ntlmssp sealing
-  connect : enable rpc connect level auth (auth, but no sign or seal)
-  validate: enable the NDR validator
-  print: enable debugging of the packets
-  bigendian: use bigendian RPC
-  padcheck: check reply data for non-zero pad bytes
+  sign      : enable ntlmssp signing
+  seal      : enable ntlmssp sealing
+  spnego    : use SPNEGO instead of NTLMSSP authentication
+  krb5      : use KRB5 instead of NTLMSSP authentication
+  connect   : enable rpc connect level auth (auth, but no sign or seal)
+  validate  : enable the NDR validator
+  print     : enable debugging of the packets
+  bigendian : use bigendian RPC
+  padcheck  : check reply data for non-zero pad bytes
 
 
-For example, these all connect to the samr pipe:
+Here are some examples:
 
    ncacn_np:myserver
    ncacn_np:myserver[samr]
    ncacn_np:myserver[\pipe\samr]
    ncacn_np:myserver[/pipe/samr]
    ncacn_np:myserver[samr,sign,print]
+   ncacn_np:myserver[sign,spnego]
    ncacn_np:myserver[\pipe\samr,sign,seal,bigendian]
    ncacn_np:myserver[/pipe/samr,seal,validate]
    ncacn_np:
    ncacn_np:[/pipe/samr]
-
    ncacn_ip_tcp:myserver
    ncacn_ip_tcp:myserver[1024]
-   ncacn_ip_tcp:myserver[1024,sign,seal]
+   ncacn_ip_tcp:myserver[sign,seal]
+   ncacn_ip_tcp:myserver[spnego,seal]
 
 
 IDEA: Maybe extend UNC names like this?
@@ -764,3 +768,21 @@ BUGS:
      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
+
+case-insenstive idea:
+  all filenames on disk lowercase
+  real case in extended attribute
+  keep cache of what dirs are all lowercase
+  when searching for name, don't search if dir is definately all lowercase
+  when creating file, use dnotify to tell if someone else creates at
+  same time
+
+solve del *.* idea:
+  make mangle cache dynamic size
+  fill during a dir scan
+  setup a timer
+  destroy cache after 30 sec
+  destroy if a 2nd dir scan happens on same dir
+