[ntpsec commit] Yet more removal of dead ISC code.

Eric S. Raymond esr at ntpsec.org
Tue Oct 20 11:49:56 UTC 2015


Module:    ntpsec
Branch:    master
Commit:    2b0c29f5adcf710be8434763dd779f8905455599
Changeset: http://git.ntpsec.org/ntpsec/commit/?id=2b0c29f5adcf710be8434763dd779f8905455599

Author:    Eric S. Raymond <esr at thyrsus.com>
Date:      Tue Oct 20 07:49:32 2015 -0400

Yet more removal of dead ISC code.

---

 lib/isc/include/isc/hash.h                       | 173 -----------------------
 lib/isc/win32/libisc.dsp                         |   4 -
 lib/isc/win32/version.c                          |  16 ---
 ports/winnt/vs2005/libntp.vcproj                 |   4 -
 ports/winnt/vs2008/libntp/libntp.vcproj          |   4 -
 ports/winnt/vs2013/libntp/libntp.vcxproj         |   1 -
 ports/winnt/vs2013/libntp/libntp.vcxproj.filters |   3 -
 7 files changed, 205 deletions(-)

diff --git a/lib/isc/include/isc/hash.h b/lib/isc/include/isc/hash.h
deleted file mode 100644
index 8d6db95..0000000
--- a/lib/isc/include/isc/hash.h
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Copyright (C) 2004-2007, 2009  Internet Systems Consortium, Inc. ("ISC")
- * Copyright (C) 2003  Internet Software Consortium.
- * Copyright 2015 by the NTPsec project contributors
- * SPDX-License-Identifier: ISC
- */
-
-#ifndef GUARD_ISC_HASH_H
-#define GUARD_ISC_HASH_H 1
-
-/*****
- ***** Module Info
- *****/
-
-/*! \file isc/hash.h
- *
- * \brief The hash API
- *	provides an unpredictable hash value for variable length data.
- *	A hash object contains a random vector (which is hidden from clients
- *	of this API) to make the actual hash value unpredictable.
- *
- *	The algorithm used in the API guarantees the probability of hash
- *	collision; in the current implementation, as long as the values stored
- *	in the random vector are unpredictable, the probability of hash
- *	collision between arbitrary two different values is at most 1/2^16.
- *
- *	Although the API is generic about the hash keys, it mainly expects
- *	DNS names (and sometimes IPv4/v6 addresses) as inputs.  It has an
- *	upper limit of the input length, and may run slow to calculate the
- *	hash values for large inputs.
- *
- *	This API is designed to be general so that it can provide multiple
- *	different hash contexts that have different random vectors.  However,
- *	it should be typical to have a single context for an entire system.
- *	To support such cases, the API also provides a single-context mode.
- *
- * \li MP:
- *	The hash object is almost read-only.  Once the internal random vector
- *	is initialized, no write operation will occur, and there will be no
- *	need to lock the object to calculate actual hash values.
- *
- * \li Reliability:
- *	In some cases this module uses low-level data copy to initialize the
- *	random vector.  Errors in this part are likely to crash the server or
- *	corrupt memory.
- *
- * \li Resources:
- *	A buffer, used as a random vector for calculating hash values.
- *
- * \li Security:
- *	This module intends to provide unpredictable hash values in
- *	adversarial environments in order to avoid denial of service attacks
- *	to hash buckets.
- *	Its unpredictability relies on the quality of entropy to build the
- *	random vector.
- *
- * \li Standards:
- *	None.
- */
-
-/***
- *** Imports
- ***/
-
-#include <isc/types.h>
-
-/***
- *** Functions
- ***/
-ISC_LANG_BEGINDECLS
-
-isc_result_t
-isc_hash_ctxcreate(isc_mem_t *mctx, isc_entropy_t *entropy, unsigned int limit,
-		   isc_hash_t **hctx);
-isc_result_t
-isc_hash_create(isc_mem_t *mctx, isc_entropy_t *entropy, size_t limit);
-/*!<
- * \brief Create a new hash object.
- *
- * isc_hash_ctxcreate() creates a different object.
- *
- * isc_hash_create() creates a module-internal object to support the
- * single-context mode.  It should be called only once.
- *
- * 'entropy' must be NULL or a valid entropy object.  If 'entropy' is NULL,
- * pseudo random values will be used to build the random vector, which may
- * weaken security.
- *
- * 'limit' specifies the maximum number of hash keys.  If it is too large,
- * these functions may fail.
- */
-
-void
-isc_hash_ctxattach(isc_hash_t *hctx, isc_hash_t **hctxp);
-/*!<
- * \brief Attach to a hash object.
- *
- * This function is only necessary for the multiple-context mode.
- */
-
-void
-isc_hash_ctxdetach(isc_hash_t **hctxp);
-/*!<
- * \brief Detach from a hash object.
- *
- * This function  is for the multiple-context mode, and takes a valid
- * hash object as an argument.
- */
-
-void
-isc_hash_destroy(void);
-/*!<
- * \brief This function is for the single-context mode, and is expected to be used
- * as a counterpart of isc_hash_create().
- *
- * A valid module-internal hash object must have been created, and this
- * function should be called only once.
- */
-
-/*@{*/
-void
-isc_hash_ctxinit(isc_hash_t *hctx);
-void
-isc_hash_init(void);
-/*!<
- * \brief Initialize a hash object.
- *
- * It fills in the random vector with a proper
- * source of entropy, which is typically from the entropy object specified
- * at the creation.  Thus, it is desirable to call these functions after
- * initializing the entropy object with some good entropy sources.
- *
- * These functions should be called before the first hash calculation.
- *
- * isc_hash_ctxinit() is for the multiple-context mode, and takes a valid hash
- * object as an argument.
- *
- * isc_hash_init() is for the single-context mode.  A valid module-internal
- * hash object must have been created, and this function should be called only
- * once.
- */
-/*@}*/
-
-/*@{*/
-unsigned int
-isc_hash_ctxcalc(isc_hash_t *hctx, const unsigned char *key,
-		 unsigned int keylen, bool case_sensitive);
-unsigned int
-isc_hash_calc(const unsigned char *key, unsigned int keylen,
-	      bool case_sensitive);
-/*!<
- * \brief Calculate a hash value.
- *
- * isc_hash_ctxinit() is for the multiple-context mode, and takes a valid hash
- * object as an argument.
- *
- * isc_hash_init() is for the single-context mode.  A valid module-internal
- * hash object must have been created.
- *
- * 'key' is the hash key, which is a variable length buffer.
- *
- * 'keylen' specifies the key length, which must not be larger than the limit
- * specified for the corresponding hash object.
- *
- * 'case_sensitive' specifies whether the hash key should be treated as
- * case_sensitive values.  It should typically be false if the hash key
- * is a DNS name.
- */
-/*@}*/
-
-ISC_LANG_ENDDECLS
-
-#endif /* GUARD_ISC_HASH_H */
diff --git a/lib/isc/win32/libisc.dsp b/lib/isc/win32/libisc.dsp
index 666ebc1..be97bce 100644
--- a/lib/isc/win32/libisc.dsp
+++ b/lib/isc/win32/libisc.dsp
@@ -279,10 +279,6 @@ SOURCE=..\include\isc\fsaccess.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\include\isc\hash.h
-# End Source File
-# Begin Source File
-
 SOURCE=..\include\isc\heap.h
 # End Source File
 # Begin Source File
diff --git a/lib/isc/win32/version.c b/lib/isc/win32/version.c
deleted file mode 100644
index a5ae493..0000000
--- a/lib/isc/win32/version.c
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * Copyright (C) 2004, 2007  Internet Systems Consortium, Inc. ("ISC")
- * Copyright (C) 1998-2001  Internet Software Consortium.
- * SPDX-License-Identifier: ISC
- */
-
-
-#include <versions.h>
-
-#include <isc/version.h>
-
-LIBISC_EXTERNAL_DATA const char isc_version[] = VERSION;
-
-LIBISC_EXTERNAL_DATA const unsigned int isc_libinterface = LIBINTERFACE;
-LIBISC_EXTERNAL_DATA const unsigned int isc_librevision = LIBREVISION;
-LIBISC_EXTERNAL_DATA const unsigned int isc_libage = LIBAGE;
diff --git a/ports/winnt/vs2005/libntp.vcproj b/ports/winnt/vs2005/libntp.vcproj
index e6ea711..82224c9 100644
--- a/ports/winnt/vs2005/libntp.vcproj
+++ b/ports/winnt/vs2005/libntp.vcproj
@@ -566,10 +566,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\..\..\lib\isc\include\isc\hash.h"
-				>
-			</File>
-			<File
 				RelativePath="..\..\..\include\ieee754io.h"
 				>
 			</File>
diff --git a/ports/winnt/vs2008/libntp/libntp.vcproj b/ports/winnt/vs2008/libntp/libntp.vcproj
index 8a819b4..29dadbc 100644
--- a/ports/winnt/vs2008/libntp/libntp.vcproj
+++ b/ports/winnt/vs2008/libntp/libntp.vcproj
@@ -693,10 +693,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\..\..\..\lib\isc\include\isc\hash.h"
-				>
-			</File>
-			<File
 				RelativePath="..\..\..\..\include\ieee754io.h"
 				>
 			</File>
diff --git a/ports/winnt/vs2013/libntp/libntp.vcxproj b/ports/winnt/vs2013/libntp/libntp.vcxproj
index 81c00c0..148d3eb 100644
--- a/ports/winnt/vs2013/libntp/libntp.vcxproj
+++ b/ports/winnt/vs2013/libntp/libntp.vcxproj
@@ -347,7 +347,6 @@
     <ClInclude Include="..\..\..\..\include\timevalops.h" />
     <ClInclude Include="..\..\..\..\include\vint64ops.h" />
     <ClInclude Include="..\..\..\..\lib\isc\include\isc\event.h" />
-    <ClInclude Include="..\..\..\..\lib\isc\include\isc\hash.h" />
     <ClInclude Include="..\..\..\..\lib\isc\include\isc\interfaceiter.h" />
     <ClInclude Include="..\..\..\..\lib\isc\include\isc\log.h" />
     <ClInclude Include="..\..\..\..\lib\isc\include\isc\md5.h" />
diff --git a/ports/winnt/vs2013/libntp/libntp.vcxproj.filters b/ports/winnt/vs2013/libntp/libntp.vcxproj.filters
index dfa9e8c..6129afd 100644
--- a/ports/winnt/vs2013/libntp/libntp.vcxproj.filters
+++ b/ports/winnt/vs2013/libntp/libntp.vcxproj.filters
@@ -328,9 +328,6 @@
     <ClInclude Include="..\..\include\gaa_compat.h">
       <Filter>Header Files</Filter>
     </ClInclude>
-    <ClInclude Include="..\..\..\..\lib\isc\include\isc\hash.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
     <ClInclude Include="..\..\..\..\include\ieee754io.h">
       <Filter>Header Files</Filter>
     </ClInclude>



More information about the vc mailing list