<pre style='margin:0'>
Rainer Müller (raimue) pushed a commit to branch master
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/fa0249d6a779a95209b05c7b590de37c1b76de0d">https://github.com/macports/macports-base/commit/fa0249d6a779a95209b05c7b590de37c1b76de0d</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new fa0249d pextlib: Remove dead code for base32
</span>fa0249d is described below
<span style='display:block; white-space:pre;color:#808000;'>commit fa0249d6a779a95209b05c7b590de37c1b76de0d
</span>Author: Rainer Müller <raimue@macports.org>
AuthorDate: Sat Apr 14 11:47:22 2018 +0200
<span style='display:block; white-space:pre;color:#404040;'> pextlib: Remove dead code for base32
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> This is not used anywhere in base.
</span>---
src/pextlib1.0/Makefile.in | 1 -
src/pextlib1.0/Pextlib.c | 3 -
src/pextlib1.0/base32cmd.c | 346 ----------------------------------------
src/pextlib1.0/base32cmd.h | 42 -----
src/pextlib1.0/tests/base32.tcl | 19 ---
5 files changed, 411 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/pextlib1.0/Makefile.in b/src/pextlib1.0/Makefile.in
</span><span style='display:block; white-space:pre;color:#808080;'>index b260080..a303820 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/pextlib1.0/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/pextlib1.0/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,6 @@ include ../../Mk/macports.autoconf.mk
</span> OBJS= \
Pextlib.o \
adv-flock.o \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- base32cmd.o \
</span> curl.o \
filemap.o \
fs-traverse.o \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/pextlib1.0/Pextlib.c b/src/pextlib1.0/Pextlib.c
</span><span style='display:block; white-space:pre;color:#808080;'>index a9066c5..651f0d4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/pextlib1.0/Pextlib.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/pextlib1.0/Pextlib.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -83,7 +83,6 @@
</span> #include "sha1cmd.h"
#include "rmd160cmd.h"
#include "sha256cmd.h"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include "base32cmd.h"
</span> #include "fs-traverse.h"
#include "filemap.h"
#include "curl.h"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1091,8 +1090,6 @@ int Pextlib_Init(Tcl_Interp *interp)
</span> Tcl_CreateObjCommand(interp, "vercmp", VercompCmd, NULL, NULL);
Tcl_CreateObjCommand(interp, "rmd160", RMD160Cmd, NULL, NULL);
Tcl_CreateObjCommand(interp, "sha256", SHA256Cmd, NULL, NULL);
<span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_CreateObjCommand(interp, "base32encode", Base32EncodeCmd, NULL, NULL);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_CreateObjCommand(interp, "base32decode", Base32DecodeCmd, NULL, NULL);
</span> Tcl_CreateObjCommand(interp, "sha1", SHA1Cmd, NULL, NULL);
Tcl_CreateObjCommand(interp, "umask", UmaskCmd, NULL, NULL);
Tcl_CreateObjCommand(interp, "pipe", PipeCmd, NULL, NULL);
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/pextlib1.0/base32cmd.c b/src/pextlib1.0/base32cmd.c
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 74ed03e..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/pextlib1.0/base32cmd.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,346 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * base32cmd.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2010 The MacPorts Project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * All rights reserved.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Redistribution and use in source and binary forms, with or without
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * modification, are permitted provided that the following conditions
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * are met:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 1. Redistributions of source code must retain the above copyright
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * notice, this list of conditions and the following disclaimer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 2. Redistributions in binary form must reproduce the above copyright
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * notice, this list of conditions and the following disclaimer in the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * documentation and/or other materials provided with the distribution.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 3. Neither the name of The MacPorts Project nor the names of its contributors
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * may be used to endorse or promote products derived from this software
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * without specific prior written permission.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * POSSIBILITY OF SUCH DAMAGE.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#if HAVE_CONFIG_H
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <config.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <ctype.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <string.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <tcl.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include "base32cmd.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/* This package provides commands for encoding and decoding of hexstrings
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- into and out of the standard base32 encoding as specified in RFC 4648.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Based on public domain base32 code from tcllib, by Andreas Kupries */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#undef BASE32HEX
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-static __inline__ int hex2dec(int data)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (data >= '0' && data <= '9')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return (data - '0');
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else if (data >= 'a' && data <= 'f')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return (data - 'a' + 10);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else if (data >= 'A' && data <= 'F')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return (data - 'A' + 10);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-int Base32EncodeCmd(ClientData dummy UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* digest;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int ndigest;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* buf;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int nbuf;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* start;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* out;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* at;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int nout;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Obj *tcl_result;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int i;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * The array used for encoding
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */ /* 123456789 123456789 123456789 12 */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifdef BASE32HEX
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char map[] = "0123456789ABCDEFGHIJKLMNOPQRSTUV";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char map[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char odd_message[] = "string has odd number of chars";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char hex_message[] = "invalid hexadecimal character";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define USAGEE "hexstring"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (objc != 2) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_WrongNumArgs (interp, 1, objv, USAGEE);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- digest = Tcl_GetByteArrayFromObj (objv[1], &ndigest);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (ndigest & 1) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- tcl_result = Tcl_NewStringObj(odd_message, sizeof(odd_message) - 1);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult(interp, tcl_result);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (i = 0; i < ndigest; i++) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (!isxdigit(digest[i])) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- tcl_result = Tcl_NewStringObj(hex_message, sizeof(hex_message) - 1);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult(interp, tcl_result);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- nbuf = ndigest / 2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- buf = (unsigned char*) Tcl_Alloc (nbuf*sizeof(char));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (i = 0; i < nbuf; i++) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- buf[i] = (hex2dec(digest[i+i]) << 4) | (hex2dec(digest[i+i+1]));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- start = buf;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- nout = ((nbuf+4)/5)*8;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- out = (unsigned char*) Tcl_Alloc (nout*sizeof(char));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (at = out; nbuf >= 5; nbuf -= 5, buf += 5) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ (buf[0]>>3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[0]<<2) | (buf[1]>>6)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[1]>>1) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[1]<<4) | (buf[2]>>4)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[2]<<1) | (buf[3]>>7)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[3]>>2) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[3]<<3) | (buf[4]>>5)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[4]) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (nbuf > 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Process partials at end. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- switch (nbuf) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- case 1:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* |01234567| 2, padding 6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxx 00
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ (buf[0]>>3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[0]<<2) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- case 2: /* x3/=4 */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* |01234567|01234567| 4, padding 4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxx xx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * x 0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ (buf[0]>>3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[0]<<2) | (buf[1]>>6)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[1]>>1) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[1]<<4) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- case 3:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* |01234567|01234567|01234567| 5, padding 3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxx xx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * x xxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxx 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ (buf[0]>>3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[0]<<2) | (buf[1]>>6)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[1]>>1) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[1]<<4) | (buf[2]>>4)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[2]<<1) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- case 4:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* |01234567|01234567|01234567|012334567| 7, padding 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxx xx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * x xxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * xxxx 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ (buf[0]>>3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[0]<<2) | (buf[1]>>6)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[1]>>1) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[1]<<4) | (buf[2]>>4)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & ((buf[2]<<1) | (buf[3]>>7)) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[3]>>2) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = map [ 0x1f & (buf[3]<<3) ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = '=';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewStringObj ((char *) out, nout));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) out);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) start);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_OK;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-int Base32DecodeCmd(ClientData dummy UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* buf;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int nbuf;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* digest;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int ndigest;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* out;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char* at;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- unsigned char x [8];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int nout;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int i, j, a, pad;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * An array for translating single base-32 characters into a value.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Disallowed input characters have a value of 64. Upper and lower
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * case is the same. Only 128 chars, as everything above char(127)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * is 64.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char map [] = {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifdef BASE32HEX
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* \00 */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* DLE */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* SPC */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '0' */ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '@' */ 64, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* 'P' */ 25, 26, 27, 28, 29, 30, 31, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '`' */ 64, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* 'p' */ 25, 26, 27, 28, 29, 30, 31, 64, 64, 64, 64, 64, 64, 64, 64, 64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* \00 */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* DLE */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* SPC */ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '0' */ 64, 64, 26, 27, 28, 29, 30, 31, 64, 64, 64, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '@' */ 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* 'P' */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 64, 64, 64, 64, 64,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* '`' */ 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* 'p' */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 64, 64, 64, 64, 64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- };
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char hex[]="0123456789abcdef";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define USAGED "estring"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (objc != 2) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_WrongNumArgs (interp, 1, objv, USAGED);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- buf = (unsigned char *) Tcl_GetStringFromObj (objv[1], &nbuf);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (nbuf % 8) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewStringObj ("Length is not a multiple of 8", -1));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- nout = (nbuf/8)*5 *TCL_UTF_MAX;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- out = (unsigned char*) Tcl_Alloc (nout*sizeof(char));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define HIGH(x) (((x) & 0x80) != 0)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define BADC(x) ((x) == 64)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define BADCHAR(a,j) (HIGH ((a)) || BADC (x [(j)] = map [(a)]))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (pad = 0, i=0, at = out; i < nbuf; i += 8, buf += 8){
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (j=0; j < 8; j++){
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- a = buf [j];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (a == '=') {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- x[j] = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- pad++;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- continue;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else if (pad) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char msg [120];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sprintf (msg,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "Invalid character at index %d: \"=\" (padding found in the middle of the input)",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- j-1);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) out);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewStringObj (msg, -1));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (BADCHAR (a,j)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char msg [100];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sprintf (msg,"Invalid character at index %d: \"%c\"",j,a);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) out);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewStringObj (msg, -1));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = (x[0]<<3) | (x[1]>>2) ;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = (x[1]<<6) | (x[2]<<1) | (x[3]>>4);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = (x[3]<<4) | (x[4]>>1) ;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = (x[4]<<7) | (x[5]<<2) | (x[6]>>3);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *(at++) = (x[6]<<5) | x[7] ;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (pad) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (pad == 1) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- at -= 1;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else if (pad == 3) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- at -= 2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else if (pad == 4) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- at -= 3;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else if (pad == 6) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- at -= 4;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char msg [100];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sprintf (msg,"Invalid padding of length %d",pad);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) out);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewStringObj (msg, -1));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- nout = at-out;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ndigest = nout * 2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- digest = (unsigned char*) Tcl_Alloc (ndigest*sizeof(char)+1);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (i = 0; i < nout; i++) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- digest[i+i] = hex[out[i] >> 4];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- digest[i+i+1] = hex[out[i] & 0x0f];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- digest[i+i] = '\0';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_SetObjResult (interp, Tcl_NewByteArrayObj (digest, ndigest));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) out);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Tcl_Free ((char*) digest);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return TCL_OK;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/pextlib1.0/base32cmd.h b/src/pextlib1.0/base32cmd.h
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 38d6a42..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/pextlib1.0/base32cmd.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,42 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * base32cmd.h
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2010 The MacPorts Project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * All rights reserved.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Redistribution and use in source and binary forms, with or without
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * modification, are permitted provided that the following conditions
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * are met:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 1. Redistributions of source code must retain the above copyright
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * notice, this list of conditions and the following disclaimer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 2. Redistributions in binary form must reproduce the above copyright
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * notice, this list of conditions and the following disclaimer in the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * documentation and/or other materials provided with the distribution.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * 3. Neither the name of The MacPorts Project nor the names of its contributors
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * may be used to endorse or promote products derived from this software
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * without specific prior written permission.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * POSSIBILITY OF SUCH DAMAGE.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifndef _BASE32CMD_H
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define _BASE32CMD_H
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <tcl.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-int Base32EncodeCmd(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-int Base32DecodeCmd(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* _BASE32CMD_H */
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/pextlib1.0/tests/base32.tcl b/src/pextlib1.0/tests/base32.tcl
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 13385c8..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/pextlib1.0/tests/base32.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,19 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Test file for Pextlib's base32 commands.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Syntax:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# tclsh base32.tcl <Pextlib name>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-proc main {pextlibname} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- load $pextlibname
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[base32encode "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"] != "4OYMIQUY7QOBJGX36TEJS35ZEQT24QPEMSNZGTFESWMRW6CSXBKQ===="} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts {[base32encode "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"] != "4OYMIQUY7QOBJGX36TEJS35ZEQT24QPEMSNZGTFESWMRW6CSXBKQ===="}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- exit 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[base32decode "4OYMIQUY7QOBJGX36TEJS35ZEQT24QPEMSNZGTFESWMRW6CSXBKQ===="] != "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts {[base32decode "4OYMIQUY7QOBJGX36TEJS35ZEQT24QPEMSNZGTFESWMRW6CSXBKQ===="] != "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- exit 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-main $argv
</span></pre><pre style='margin:0'>
</pre>