1. 27 Apr, 2000 22 commits
    • David Lawrence's avatar
      109. [bug] "make depend" did nothing for · 8a0ba20b
      David Lawrence authored
                              bin/tests/{db,mem,sockaddr,tasks,timers}/.
      8a0ba20b
    • David Lawrence's avatar
      108. [cleanup] DNS_SETBIT/DNS_GETBIT/DNS_CLEARBIT moved from · b3e77535
      David Lawrence authored
                              <dns/types.h> to <dns/bit.h> and renamed to
                              DNS_BIT_SET/DNS_BIT_GET/DNS_BIT_CLEAR.
      b3e77535
    • Andreas Gustafsson's avatar
      conform to buffer API changes · 96eb58dd
      Andreas Gustafsson authored
      96eb58dd
    • Bob Halley's avatar
      performance improvements · 89b117b7
      Bob Halley authored
      89b117b7
    • Bob Halley's avatar
      add macros · bcaf5445
      Bob Halley authored
      bcaf5445
    • Bob Halley's avatar
      conform to buffer api changes · dcb719f1
      Bob Halley authored
      dcb719f1
    • Bob Halley's avatar
      rename internal functions · 66994086
      Bob Halley authored
      66994086
    • Brian Wellington's avatar
      Added keysigner and keysettool · 03f0e349
      Brian Wellington authored
      03f0e349
    • Brian Wellington's avatar
      Added verbose flag. Currently doesn't do anything, but it's consistent with · 22e8a319
      Brian Wellington authored
      the other dnssec tools.
      22e8a319
    • Brian Wellington's avatar
      a15583c6
    • Brian Wellington's avatar
    • Brian Wellington's avatar
    • Michael Graff's avatar
      Call the macros from within the compiled functions. This puts the... · d8d845eb
      Michael Graff authored
      Call the macros from within the compiled functions.  This puts the implementation in one place (buffer.h) and the REQUIRE() checking in buffer.c
      d8d845eb
    • David Lawrence's avatar
      Vertical whitespace is encouraged for improved code legibility by · e1747e09
      David Lawrence authored
      grouping closely related statements and then separating them with a
      single empty line.
      
      Lines should not be longer than 79 characters, even if it requires
      violating the indentation rules to do so.  Since ANSI is assumed, the
      best way to deal with strings that extend past column 79 is to break
      them into two or more sections separated from each other by a newline
      and indentation. (w/example)
      
      Note that <isc/lang.h> should be included by any public
      header file to get the ISC_LANG_BEGINDECLS and ISC_LANG_ENDDECLS
      macros used so the correct name-mangling happens for function
      declarations when C++ programs include the file. <isc/lang.h> should
      be included for private header files or for public files that do not
      declare any functions. (w/example)
      
      Fixed < and > use in sample header file.
      
      The config.h file must never be included by any public header file.
      
      The comma operator should not be used to form compound statements.
      (w/example)
      
      Generally speaking, when a control statement (<CODE>if, for</CODE> or
      <CODE>while</CODE>) has only a single action associated with it, then no
      bracing is used around the statement.  Exceptions include when the
      compiler would complain about an ambiguous else clause, or when extra
      bracing improves the readability (a judgement call biased toward not
      having the braces).
      
      Do not put a space after the "sizeof" operator name, and also
      parenthesize its argument, as in <CODE>malloc(4 * sizeof(long))</CODE>.
      
      Do not put a space after a cast. (w/example)
      
      <H4>The Ternary Operator</H4> (w/example)
      The ?: operator should mostly be avoided.  It is tolerated when
      deciding what value to pass as a parameter to a function, such as
      frequently happens with printf, and also when a simple (non-compound)
      value is being used in assignment or as part of a calculation.
      In particular, using the ternary operator to specify a return value is
      verboten. (Well, Bob didn't tell me *forbidden* when he first said this
      to me long ago, but I got the impression he really did not like it.)
      
      Variables should not have their values assigned or changed when being
      passed as parameters, except perhaps for the increment and decrement
      operators. (This came up when I found something much like this in one
      of our files:
             malloc(size = 20);
      
      All public interfaces to functions, macros, typedefs, and
      variables provided by the library, should use names of the form
      {library}_{module}_{what}, such as:
      
             isc_buffer_t                            /* typedef */
             dns_name_setbuffer(name, buffer)       /* function */
             ISC_LIST_HEAD(list)                    /* macro */
             isc_commandline_argument               /* variable */
      
      however, structures which are typedef'd generally have the name of the
      typedef sans the final _t:
      
             struct dns_rbtnode {
                     /* ... members ... */
             }
      
      Generally speaking macros are defined with all capital letters, but
      this is not universally consistent (eg, numerous isc_buffer_{foo}
      macros).
      
      The {module} and {what} segments of the name do not have underscores
      separating natural word elements, as demonstrated in
      isc_commandline_argument and dns_name_setbuffer above.  The {module}
      part is usually the same as the basename of the source file, but
      sometimes other {module} interfaces appear within one file, such as
      dns_label_* interfaces in lib/dns/name.c.  However, in the public
      libraries the file name must be the same as some module interface
      provided by the file; e.g., dns_rbt_* interfaces would not be declared
      in a file named redblack.c (in lieu of any other dns_redblack_*
      interfaces in the file).
      
      The one notable exception to this naming rule is the interfaces
      provided by <isc/util.h>.  There's a large caveat associated with the
      public description of this file that it is hazardous to use because it
      pollutes the general namespace.
      
      <H4>Shared Private Interfaces</H4>
      When a module provides an interface for internal use by other modules
      in the library, it should use the same naming convention
      described for the public interfaces, except {library} and {module}
      are separated by a double-underscore.  This indicates that the name is
      internal, its API is not as formal as the public API, and thus it
      might change without any sort of notice.
      e1747e09
    • Michael Graff's avatar
      add comments about 'RETAIN' · 1911100e
      Michael Graff authored
      1911100e
    • Michael Graff's avatar
    • Michael Sawyer's avatar
    • Michael Sawyer's avatar
      Fix for new memory log output format · d536f68b
      Michael Sawyer authored
      d536f68b
    • Andreas Gustafsson's avatar
      d11241a2
    • Andreas Gustafsson's avatar
      return value from dns_rdataset_first() was ignored; · fa04a194
      Andreas Gustafsson authored
      added more comments and logging to nxtvalidate()
      fa04a194
    • David Lawrence's avatar
    • David Lawrence's avatar
      103. [func] libisc buffer API changes for <isc/buffer.h>: · 6e49e91b
      David Lawrence authored
                              Added:
                                      isc_buffer_base(b)          (pointer)
                                      isc_buffer_current(b)       (pointer)
                                      isc_buffer_active(b)        (pointer)
                                      isc_buffer_used(b)          (pointer)
                                      isc_buffer_length(b)            (int)
                                      isc_buffer_usedlength(b)        (int)
                                      isc_buffer_consumedlength(b)    (int)
                                      isc_buffer_remaininglength(b)   (int)
                                      isc_buffer_activelength(b)      (int)
                                      isc_buffer_availablelength(b)   (int)
                              Removed:
                                      ISC_BUFFER_USEDCOUNT(b)
                                      ISC_BUFFER_AVAILABLECOUNT(b)
                                      isc_buffer_type(b)
                              Changed names:
                                      isc_buffer_used(b, r) ->
                                              isc_buffer_usedregion(b, r)
                                      isc_buffer_available(b, r) ->
                                              isc_buffer_available_region(b, r)
                                      isc_buffer_consumed(b, r) ->
                                              isc_buffer_consumedregion(b, r)
                                      isc_buffer_active(b, r) ->
                                              isc_buffer_activeregion(b, r)
                                      isc_buffer_remaining(b, r) ->
                                              isc_buffer_remainingregion(b, r)
      
                              Buffer types were removed, so the ISC_BUFFERTYPE_*
                              macros are no more, and the type argument to
                              isc_buffer_init and isc_buffer_allocate were removed.
                              isc_buffer_putstr is now void (instead of isc_result_t)
                              and requires that the caller ensure that there
                              is enough available buffer space for the string.
      6e49e91b
  2. 26 Apr, 2000 18 commits