1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-10 01:18:15 +03:00
Commit Graph

13 Commits

Author SHA1 Message Date
Christopher R. Hertel
164cc91d81 Bringing these up to date with what I've got on my site. The fixes include
the change that prevents 'insure' from becomming confused and issuing leak
reports.  Some minor speed fixes.  That sort of thing.

Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
487a2e13b7 I received a bug report from Massimo Campostrini in Pisa. There are a pair
of "front-end" functions with the same bug each.

Fixed.
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
1ce7d38d9f Minor cosmetic change. I up-cased internal #defines. 0001-01-01 00:00:00 +00:00
Christopher R. Hertel
e30a7e023b It occurred to me that the samba includes.h file should be included in the
header files used by the ubiqx modules, instead of being hidden in the .c
files.  This would ensure that anything in includes.h would be "seen" by
the ubiqx headers.  I also had to put an #ifdef around the includes for
ubi_SplayTree.h and ubi_Cache.h in includes.h to prevent the header of the
descendant type from being included before its parent type.

Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
def161eeea Changed the mechanism for including the Samba includes.h in the ubiqx code
to something less hurried, simpler, and (I believe) more acceptable to
all.  The ubi_*.c files all now #include sys_include.h which, for Samba,
contains only comments and the line

#include "../includes.h"

That will make sure that the Samba header is there, allows me to
distribute a different default header with the main ubiqx set, and allows
others to write their own sys_includes.h for their own purposes.

Thanks to Andrew and Jeremy for hammering this out with me.

Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
05fcc67872 Along the lines that Andrew suggested, I added a header called ubi_null.h.
This header tries four different locations for a definition of NULL.  If
NULL still hasn't been found, it defaults to ((void *)0).  All of the
includes can be, essentially, overridden by defining NULL on the command
line, as in -DNULL=((void *)0).  I have faith that this will avoid the
problem of NULL being in different places on different systems.  If there
is a system out there that doesn't define NULL in any of the headers I've
included, then let me know *where* it's defined and I'll add another
header.  Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
7ba2195cc1 Fixed some typecast and function pointer problems pointed out by a
programmer in Finland.

Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
599a29401d Updates to all of these base level modules.
Trees: Previously, the AVL node type was different than the node type used
       in the BinTree and SplayTree modules.  It requires an additional
       field to maintain AVL balance information.  I merged that field into
       the base type (in ubi_BinTree.h) so that all three use the same
       node type.  On most systems this will have zero effect on the node
       size, due to word alignment.  The change allowed me to remove a
       bigbunch of redundant code, which makes the AVL module smaller and
       cleaner.
Linked Lists:  I combined ubi_StackQueue into ubi_sLinkList.  The interface
       has changed a tiny bit.  I added macros to ubi_dLinkList to round
       it out a bit.

I have verified that the few Samba modules that use these tools (so far)
do not have any problems with the changes.

Chris -)-----
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
ce9acc96a6 Backed out changes that attempted to address a pointer array using -1,0,1.
Jeremy pointed out that there might be problems with this.  Darn shame.
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
db9898559f While working on a general-purpose caching module (out soon), I thought of
a better way to handle the node pointer array used in ubi_BinTree.  The
change simplified the code a bigbunch.  It also forced updates to all of
the binary tree modules.  CRH
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
c6205dd45e Modified Files:
ubiqx/Makefile ubiqx/README.UBI

Added new modules to the Makefile.  Changed the text of the README to
reflect the directory change.

Added Files:
        ubiqx/ubi_AVLtree.c ubiqx/ubi_AVLtree.h
        ubiqx/ubi_BinTree.c ubiqx/ubi_BinTree.h
        ubiqx/ubi_SplayTree.c ubiqx/ubi_SplayTree.h
        ubiqx/ubi_StackQueue.c ubiqx/ubi_StackQueue.h
        ubiqx/ubi_sLinkList.c ubiqx/ubi_sLinkList.h

This is the remainder of the toolkit.  A quick rundown:
  sLinkList  = A simple singly-linked list.
  StackQueue = Implements both a stack and a queue.
  dLinkList  = (Not added 'cause it's already there.)  A doubly-linked list.

  BinTree    = Base level binary tree module.  (No height balancing, just
               the basics.)
  AVLtree    = Descendant type of BinTree.  Implements a height-balanced
               (AVL) binary tree.
  SplayTree  = Descendant type of BinTree.  Implements a splay-balanced
               binary tree.

Renamed Files:
        ubiqx/COPYING.LGPL ==> ubiqx/COPYING.LIB

This matches the naming that GNU suggests.
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
4691a94d3c I got fed up trying to put the tree and list stuff into a subdirectory,
so I've started to move them into the main directory.
0001-01-01 00:00:00 +00:00
Christopher R. Hertel
3590a78333 This is the ubiqx binary tree and linked list library.
This library is being included as part of the Samba distribution.
(Hurray!)
0001-01-01 00:00:00 +00:00