torture: Remove unused smbiconv
authorAndrew Bartlett <abartlet@samba.org>
Sun, 23 Oct 2011 23:05:19 +0000 (10:05 +1100)
committerStefan Metzmacher <metze@samba.org>
Tue, 25 Oct 2011 15:58:33 +0000 (17:58 +0200)
smbiconv is not used in any test script, and has only had changes
since being introduced by Jelmer to keep it building.

It is also not installed on the system. I have also checked with
Jelmer, who approved the removal.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
source3/Makefile.in
source3/torture/smbiconv.c [deleted file]
source3/wscript_build
source4/torture/smbiconv.c [deleted file]

index c303fe99a53c7071e7bd34002267c12bceabd7ff..502dab7c267849d9bb516725c312fd703671e80c 100644 (file)
@@ -231,7 +231,7 @@ BIN_PROGS = @EXTRA_BIN_PROGS@ \
 EVERYTHING_PROGS = bin/debug2html@EXEEXT@ bin/smbfilter@EXEEXT@ \
        $(TALLOCTORT) bin/replacetort@EXEEXT@ \
        bin/log2pcap@EXEEXT@ \
-       bin/vlp@EXEEXT@ bin/smbiconv@EXEEXT@ \
+       bin/vlp@EXEEXT@ \
        bin/dbwrap_tool@EXEEXT@ \
        bin/dbwrap_torture@EXEEXT@
 
@@ -1299,8 +1299,6 @@ PDBTEST_OBJ = torture/pdbtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
 
 VFSTEST_OBJ = torture/cmd_vfs.o torture/vfstest.o $(SMBD_OBJ_BASE) $(READLINE_OBJ)
 
-SMBICONV_OBJ = $(PARAM_OBJ) torture/smbiconv.o $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) $(LIBSMB_ERR_OBJ)
-
 LOG2PCAP_OBJ = utils/log2pcaphex.o
 
 LOCKTEST2_OBJ = torture/locktest2.o $(PARAM_OBJ) $(LOCKING_OBJ) $(LIBSMB_OBJ) \
@@ -2031,12 +2029,6 @@ bin/vfstest@EXEEXT@: $(BINARY_PREREQS) $(VFSTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC)
                @SMBD_LIBS@ $(NSCD_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
                $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/smbiconv@EXEEXT@: $(BINARY_PREREQS) $(SMBICONV_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
-       @echo Linking $@
-       @$(CC) -o $@ $(SMBICONV_OBJ) $(LDFLAGS) $(TERMLDFLAGS) \
-               $(TERMLIBS) $(DYNEXP) $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
-
 bin/log2pcap@EXEEXT@: $(BINARY_PREREQS) $(LOG2PCAP_OBJ) @BUILD_POPT@ $(LIBTALLOC)
        @echo Linking $@
        @$(CC) -o $@ $(LOG2PCAP_OBJ) $(LDFLAGS) $(DYNEXP) \
diff --git a/source3/torture/smbiconv.c b/source3/torture/smbiconv.c
deleted file mode 100644 (file)
index 88ad6fe..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-   Charset module tester
-
-   Copyright (C) Jelmer Vernooij 2003
-   Based on iconv/icon_prog.c from the GNU C Library, 
-      Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "includes.h"
-#include "system/filesys.h"
-#include "popt_common.h"
-#undef realloc
-
-static int
-process_block (smb_iconv_t cd, const char *addr, size_t len, FILE *output)
-{
-#define OUTBUF_SIZE    32768
-  const char *start = addr;
-  char outbuf[OUTBUF_SIZE];
-  char *outptr;
-  size_t outlen;
-  size_t n;
-
-  while (len > 0)
-    {
-      outptr = outbuf;
-      outlen = OUTBUF_SIZE;
-      n = smb_iconv (cd,  &addr, &len, &outptr, &outlen);
-
-      if (outptr != outbuf)
-       {
-         /* We have something to write out.  */
-         int errno_save = errno;
-
-         if (fwrite (outbuf, 1, outptr - outbuf, output)
-             < (size_t) (outptr - outbuf)
-             || ferror (output))
-           {
-             /* Error occurred while printing the result.  */
-             DEBUG (0, ("conversion stopped due to problem in writing the output"));
-             return -1;
-           }
-
-         errno = errno_save;
-       }
-
-      if (errno != E2BIG)
-       {
-         /* iconv() ran into a problem.  */
-         switch (errno)
-           {
-           case EILSEQ:
-             DEBUG(0,("illegal input sequence at position %ld", 
-                    (long) (addr - start)));
-             break;
-           case EINVAL:
-             DEBUG(0, ("\
-incomplete character or shift sequence at end of buffer"));
-             break;
-           case EBADF:
-             DEBUG(0, ("internal error (illegal descriptor)"));
-             break;
-           default:
-             DEBUG(0, ("unknown iconv() error %d", errno));
-             break;
-           }
-
-         return -1;
-       }
-    }
-
-  return 0;
-}
-
-
-static int
-process_fd (smb_iconv_t cd, int fd, FILE *output)
-{
-  /* we have a problem with reading from a descriptor since we must not
-     provide the iconv() function an incomplete character or shift
-     sequence at the end of the buffer.  Since we have to deal with
-     arbitrary encodings we must read the whole text in a buffer and
-     process it in one step.  */
-  static char *inbuf = NULL;
-  static size_t maxlen = 0;
-  char *inptr = NULL;
-  size_t actlen = 0;
-
-  while (actlen < maxlen)
-    {
-      ssize_t n = read (fd, inptr, maxlen - actlen);
-
-      if (n == 0)
-       /* No more text to read.  */
-       break;
-
-      if (n == -1)
-       {
-         /* Error while reading.  */
-         DEBUG(0, ("error while reading the input"));
-         return -1;
-       }
-
-      inptr += n;
-      actlen += n;
-    }
-
-  if (actlen == maxlen)
-    while (1)
-      {
-       ssize_t n;
-       char *new_inbuf;
-
-       /* Increase the buffer.  */
-       new_inbuf = (char *) realloc (inbuf, maxlen + 32768);
-       if (new_inbuf == NULL)
-         {
-           DEBUG(0, ("unable to allocate buffer for input"));
-           return -1;
-         }
-       inbuf = new_inbuf;
-       maxlen += 32768;
-       inptr = inbuf + actlen;
-
-       do
-         {
-           n = read (fd, inptr, maxlen - actlen);
-
-           if (n == 0)
-             /* No more text to read.  */
-             break;
-
-           if (n == -1)
-             {
-               /* Error while reading.  */
-               DEBUG(0, ("error while reading the input"));
-               return -1;
-             }
-
-           inptr += n;
-           actlen += n;
-         }
-       while (actlen < maxlen);
-
-       if (n == 0)
-         /* Break again so we leave both loops.  */
-         break;
-      }
-
-  /* Now we have all the input in the buffer.  Process it in one run.  */
-  return process_block (cd, inbuf, actlen, output);
-}
-
-/* Main function */
-
-int main(int argc, char *argv[])
-{
-       const char *file = NULL;
-       const char *from = "";
-       const char *to = "";
-       char *output = NULL;
-       const char *preload_modules[] = {NULL, NULL};
-       FILE *out = stdout;
-       int fd;
-       smb_iconv_t cd;
-
-       /* make sure the vars that get altered (4th field) are in
-          a fixed location or certain compilers complain */
-       poptContext pc;
-       struct poptOption long_options[] = {
-               POPT_AUTOHELP
-               { "from-code", 'f', POPT_ARG_STRING, &from, 0, "Encoding of original text" },
-               { "to-code", 't', POPT_ARG_STRING, &to, 0, "Encoding for output" },
-               { "output", 'o', POPT_ARG_STRING, &output, 0, "Write output to this file" },
-               { "preload-modules", 'p', POPT_ARG_STRING, &preload_modules[0], 0, "Modules to load" },
-               POPT_COMMON_SAMBA
-               POPT_TABLEEND
-       };
-
-       setlinebuf(stdout);
-
-       pc = poptGetContext("smbiconv", argc, (const char **) argv,
-                           long_options, 0);
-
-       poptSetOtherOptionHelp(pc, "[FILE] ...");
-       
-       while(poptGetNextOpt(pc) != -1);
-
-       /* the following functions are part of the Samba debugging
-          facilities.  See lib/debug.c */
-       setup_logging("smbiconv", DEBUG_STDOUT);
-
-       if (preload_modules[0]) smb_load_modules(preload_modules);
-
-       if(output) {
-               out = fopen(output, "w");
-
-               if(!out) {
-                       DEBUG(0, ("Can't open output file '%s': %s, exiting...\n", output, strerror(errno)));
-                       return 1;
-               }
-       }
-
-       cd = smb_iconv_open(to, from);
-       if (cd == (smb_iconv_t)-1) {
-               DEBUG(0,("unable to find from or to encoding, exiting...\n"));
-               if (out != stdout) fclose(out);
-               return 1;
-       }
-
-       while((file = poptGetArg(pc))) {
-               if(strcmp(file, "-") == 0) fd = 0;
-               else {
-                       fd = open(file, O_RDONLY);
-                       
-                       if(!fd) {
-                               DEBUG(0, ("Can't open input file '%s': %s, ignoring...\n", file, strerror(errno)));
-                               continue;
-                       }
-               }
-
-               /* Loop thru all arguments */
-               process_fd(cd, fd, out);
-
-               close(fd);
-       }
-       poptFreeContext(pc);
-
-       fclose(out);
-
-       return 0;
-}
index f2c41484583867d93b01c5378118b70b1f3cd63d..7430d200f92c579a130a0733b35bf5a6a8c8a86e 100755 (executable)
@@ -584,8 +584,6 @@ PDBTEST_SRC = '''torture/pdbtest.c'''
 
 VFSTEST_SRC = '''torture/cmd_vfs.c torture/vfstest.c'''
 
-SMBICONV_SRC = '''torture/smbiconv.c'''
-
 LOG2PCAP_SRC = '''utils/log2pcaphex.c'''
 
 LOCKTEST2_SRC = '''torture/locktest2.c'''
@@ -1314,11 +1312,6 @@ bld.SAMBA3_BINARY('vfstest',
                  deps='smbd_base SMBREADLINE',
                  vars=locals())
 
-bld.SAMBA3_BINARY('smbiconv',
-                 source=SMBICONV_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim popt_samba3 LIBSMB_ERR''',
-                 vars=locals())
-
 bld.SAMBA3_BINARY('log2pcap',
                  source=LOG2PCAP_SRC,
                  deps='''talloc popt''',
diff --git a/source4/torture/smbiconv.c b/source4/torture/smbiconv.c
deleted file mode 100644 (file)
index 4516608..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-   Charset module tester
-
-   Copyright (C) Jelmer Vernooij 2003
-   Based on iconv/icon_prog.c from the GNU C Library, 
-      Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "includes.h"
-
-static int process_block (smb_iconv_t cd, const char *addr, size_t len, FILE *output)
-{
-#define OUTBUF_SIZE    32768
-  const char *start = addr;
-  char outbuf[OUTBUF_SIZE];
-  char *outptr;
-  size_t outlen;
-  size_t n;
-
-  while (len > 0)
-    {
-      outptr = outbuf;
-      outlen = OUTBUF_SIZE;
-      n = smb_iconv (cd,  &addr, &len, &outptr, &outlen);
-
-      if (outptr != outbuf)
-       {
-         /* We have something to write out.  */
-         int errno_save = errno;
-
-         if (fwrite (outbuf, 1, outptr - outbuf, output)
-             < (size_t) (outptr - outbuf)
-             || ferror (output))
-           {
-             /* Error occurred while printing the result.  */
-             DEBUG (0, ("conversion stopped due to problem in writing the output"));
-             return -1;
-           }
-
-         errno = errno_save;
-       }
-
-      if (errno != E2BIG)
-       {
-         /* iconv() ran into a problem.  */
-         switch (errno)
-           {
-           case EILSEQ:
-             DEBUG(0,("illegal input sequence at position %ld", 
-                    (long) (addr - start)));
-             break;
-           case EINVAL:
-             DEBUG(0, ("\
-incomplete character or shift sequence at end of buffer"));
-             break;
-           case EBADF:
-             DEBUG(0, ("internal error (illegal descriptor)"));
-             break;
-           default:
-             DEBUG(0, ("unknown iconv() error %d", errno));
-             break;
-           }
-
-         return -1;
-       }
-    }
-
-  return 0;
-}
-
-
-static int process_fd (iconv_t cd, int fd, FILE *output)
-{
-  /* we have a problem with reading from a descriptor since we must not
-     provide the iconv() function an incomplete character or shift
-     sequence at the end of the buffer.  Since we have to deal with
-     arbitrary encodings we must read the whole text in a buffer and
-     process it in one step.  */
-  static char *inbuf = NULL;
-  static size_t maxlen = 0;
-  char *inptr = NULL;
-  size_t actlen = 0;
-
-  while (actlen < maxlen)
-    {
-      ssize_t n = read (fd, inptr, maxlen - actlen);
-
-      if (n == 0)
-       /* No more text to read.  */
-       break;
-
-      if (n == -1)
-       {
-         /* Error while reading.  */
-         DEBUG(0, ("error while reading the input"));
-         return -1;
-       }
-
-      inptr += n;
-      actlen += n;
-    }
-
-  if (actlen == maxlen)
-    while (1)
-      {
-       ssize_t n;
-       char *new_inbuf;
-
-       /* Increase the buffer.  */
-       new_inbuf = (char *) realloc (inbuf, maxlen + 32768);
-       if (new_inbuf == NULL)
-         {
-           DEBUG(0, ("unable to allocate buffer for input"));
-           return -1;
-         }
-       inbuf = new_inbuf;
-       maxlen += 32768;
-       inptr = inbuf + actlen;
-
-       do
-         {
-           n = read (fd, inptr, maxlen - actlen);
-
-           if (n == 0)
-             /* No more text to read.  */
-             break;
-
-           if (n == -1)
-             {
-               /* Error while reading.  */
-               DEBUG(0, ("error while reading the input"));
-               return -1;
-             }
-
-           inptr += n;
-           actlen += n;
-         }
-       while (actlen < maxlen);
-
-       if (n == 0)
-         /* Break again so we leave both loops.  */
-         break;
-      }
-
-  /* Now we have all the input in the buffer.  Process it in one run.  */
-  return process_block (cd, inbuf, actlen, output);
-}
-
-/* Main function */
-
-int main(int argc, char *argv[])
-{
-       const char *file = NULL;
-       char *from = "";
-       char *to = "";
-       char *output = NULL;
-       const char *preload_modules[] = {NULL, NULL};
-       FILE *out = stdout;
-       int fd;
-       smb_iconv_t cd;
-
-       /* make sure the vars that get altered (4th field) are in
-          a fixed location or certain compilers complain */
-       poptContext pc;
-       struct poptOption long_options[] = {
-               POPT_AUTOHELP
-               { "from-code", 'f', POPT_ARG_STRING, &from, 0, "Encoding of original text" },
-               { "to-code", 't', POPT_ARG_STRING, &to, 0, "Encoding for output" },
-               { "output", 'o', POPT_ARG_STRING, &output, 0, "Write output to this file" },
-               { "preload-modules", 'p', POPT_ARG_STRING, &preload_modules[0], 0, "Modules to load" },
-               { NULL }
-       };
-
-       setlinebuf(stdout);
-
-       pc = poptGetContext("smbiconv", argc, (const char **) argv,
-                           long_options, 0);
-
-       poptSetOtherOptionHelp(pc, "[FILE] ...");
-       
-       while(poptGetNextOpt(pc) != -1);
-
-       if (preload_modules[0]) smb_load_modules(preload_modules);
-
-       if(output) {
-               out = fopen(output, "w");
-
-               if(!out) {
-                       DEBUG(0, ("Can't open output file '%s': %s, exiting...\n", output, strerror(errno)));
-                       return 1;
-               }
-       }
-
-       cd = smb_iconv_open_ex(tctx, to, from, lpcfg_parm_bool(tctx->lp_ctx, NULL, "iconv", "use_builtin_handlers", true));
-       if((int)cd == -1) {
-               DEBUG(0,("unable to find from or to encoding, exiting...\n"));
-               if (out != stdout) fclose(out);
-               return 1;
-       }
-
-       while((file = poptGetArg(pc))) {
-               if(strcmp(file, "-") == 0) fd = 0;
-               else {
-                       fd = open(file, O_RDONLY);
-                       
-                       if(!fd) {
-                               DEBUG(0, ("Can't open input file '%s': %s, ignoring...\n", file, strerror(errno)));
-                               continue;
-                       }
-               }
-
-               /* Loop thru all arguments */
-               process_fd(cd, fd, out);
-
-               close(fd);
-       }
-       poptFreeContext(pc);
-
-       fclose(out);
-
-       return 0;
-}