[patch 7/9] remove file misc.c - Mailing list pgsql-patches

From Marko Kreen
Subject [patch 7/9] remove file misc.c
Date
Msg-id 20060711195804.122181000@localhost.localdomain
Whole thread Raw
List pgsql-patches
misc.c annoys me and creates unnecesary inter-dependencies just
for sharing a couple of bytes.  This patch splits it out
to crypt-md5.c and crypt-des.c

Please do 'cvs remove misc.c' after applying this patch.

Index: pgsql/contrib/pgcrypto/Makefile
===================================================================
*** pgsql.orig/contrib/pgcrypto/Makefile
--- pgsql/contrib/pgcrypto/Makefile
*************** CF_PGP_TESTS = $(if $(subst no,,$(with_z
*** 23,29 ****

  PG_CPPFLAGS    = $(CF_CFLAGS)

! SRCS        = pgcrypto.c px.c px-hmac.c px-crypt.c misc.c \
          crypt-gensalt.c crypt-blowfish.c crypt-des.c \
          crypt-md5.c $(CF_SRCS) \
          mbuf.c pgp.c pgp-armor.c pgp-cfb.c pgp-compress.c \
--- 23,29 ----

  PG_CPPFLAGS    = $(CF_CFLAGS)

! SRCS        = pgcrypto.c px.c px-hmac.c px-crypt.c \
          crypt-gensalt.c crypt-blowfish.c crypt-des.c \
          crypt-md5.c $(CF_SRCS) \
          mbuf.c pgp.c pgp-armor.c pgp-cfb.c pgp-compress.c \
Index: pgsql/contrib/pgcrypto/crypt-des.c
===================================================================
*** pgsql.orig/contrib/pgcrypto/crypt-des.c
--- pgsql/contrib/pgcrypto/crypt-des.c
***************
*** 71,76 ****
--- 71,79 ----

  #define _PASSWORD_EFMT1 '_'

+ static const char _crypt_a64[] =
+ "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
+
  static uint8 IP[64] = {
      58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4,
      62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32, 24, 16, 8,
Index: pgsql/contrib/pgcrypto/crypt-md5.c
===================================================================
*** pgsql.orig/contrib/pgcrypto/crypt-md5.c
--- pgsql/contrib/pgcrypto/crypt-md5.c
***************
*** 17,22 ****
--- 17,36 ----
  #include "px-crypt.h"

  #define MD5_SIZE 16
+
+ static const char _crypt_a64[] =
+ "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
+
+ static void
+ _crypt_to64(char *s, unsigned long v, int n)
+ {
+        while (--n >= 0)
+     {
+         *s++ = _crypt_a64[v & 0x3f];
+         v >>= 6;
+     }
+ }
+
  /*
   * UNIX password
   */
Index: pgsql/contrib/pgcrypto/px-crypt.h
===================================================================
*** pgsql.orig/contrib/pgcrypto/px-crypt.h
--- pgsql/contrib/pgcrypto/px-crypt.h
*************** int            px_gen_salt(const char *salt_type,
*** 55,68 ****
   * internal functions
   */

- /* misc.c */
- extern void px_crypt_to64(char *s, unsigned long v, int n);
- extern char px_crypt_a64[];
-
- /* avoid conflicts with system libs */
- #define _crypt_to64 px_crypt_to64
- #define _crypt_a64 px_crypt_a64
-
  /* crypt-gensalt.c */
  char *_crypt_gensalt_traditional_rn(unsigned long count,
                   const char *input, int size, char *output, int output_size);
--- 55,60 ----
Index: pgsql/contrib/pgcrypto/crypt-gensalt.c
===================================================================
*** pgsql.orig/contrib/pgcrypto/crypt-gensalt.c
--- pgsql/contrib/pgcrypto/crypt-gensalt.c
***************
*** 19,25 ****

  typedef unsigned int BF_word;

! unsigned char _crypt_itoa64[64 + 1] =
  "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

  char *
--- 19,25 ----

  typedef unsigned int BF_word;

! static unsigned char _crypt_itoa64[64 + 1] =
  "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

  char *
Index: pgsql/contrib/pgcrypto/misc.c
===================================================================
*** pgsql.orig/contrib/pgcrypto/misc.c
--- /dev/null
***************
*** 1,51 ****
- /*
-  * Copyright (c) 1999
-  *        University of California.  All rights reserved.
-  *
-  * $PostgreSQL: pgsql/contrib/pgcrypto/misc.c,v 1.3 2006/03/11 04:38:30 momjian Exp $
-  *
-  * Redistribution and use in source and binary forms, with or without
-  * modification, are permitted provided that the following conditions
-  * are met:
-  * 1. Redistributions of source code must retain the above copyright
-  *      notice, this list of conditions and the following disclaimer.
-  * 2. Redistributions in binary form must reproduce the above copyright
-  *      notice, this list of conditions and the following disclaimer in the
-  *      documentation and/or other materials provided with the distribution.
-  * 3. Neither the name of the author nor the names of any co-contributors
-  *      may be used to endorse or promote products derived from this software
-  *      without specific prior written permission.
-  *
-  * THIS SOFTWARE IS PROVIDED BY CONTRIBUTORS ``AS IS'' AND ANY EXPRESS
-  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  * ARE DISCLAIMED. IN NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY
-  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
-  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-  * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-  * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-  *
-  * $FreeBSD: src/lib/libcrypt/misc.c,v 1.1 1999/09/20 12:45:49 markm Exp $
-  *
-  */
-
- #include "px-crypt.h"
-
- char        px_crypt_a64[] =
- "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
-
- /* 0000000000111111111122222222223333333333444444444455555555556666 */
- /* 0123456789012345678901234567890123456789012345678901234567890123 */
-
- void
- px_crypt_to64(char *s, unsigned long v, int n)
- {
-     while (--n >= 0)
-     {
-         *s++ = px_crypt_a64[v & 0x3f];
-         v >>= 6;
-     }
- }
--- 0 ----

--

pgsql-patches by date:

Previous
From: Marko Kreen
Date:
Subject: [patch 9/9] Include code for bignum math
Next
From: "Marko Kreen"
Date:
Subject: small entab cleanup