Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/usr.bin/sort make ftmp() wrapper aroung tmpfile(), there is ...



details:   https://anonhg.NetBSD.org/src/rev/edb57d9f3cf6
branches:  trunk
changeset: 501874:edb57d9f3cf6
user:      jdolecek <jdolecek%NetBSD.org@localhost>
date:      Mon Jan 08 19:16:49 2001 +0000

description:
make ftmp() wrapper aroung tmpfile(), there is no need to reimplement it
move ftmp() from tmp.c to files.c
g/c no longer needed stuff

diffstat:

 usr.bin/sort/Makefile |   4 +-
 usr.bin/sort/files.c  |  18 +++++++++-
 usr.bin/sort/sort.c   |   8 +---
 usr.bin/sort/tmp.c    |  83 ---------------------------------------------------
 4 files changed, 20 insertions(+), 93 deletions(-)

diffs (172 lines):

diff -r ea6bf95d37b3 -r edb57d9f3cf6 usr.bin/sort/Makefile
--- a/usr.bin/sort/Makefile     Mon Jan 08 18:58:56 2001 +0000
+++ b/usr.bin/sort/Makefile     Mon Jan 08 19:16:49 2001 +0000
@@ -1,7 +1,7 @@
-#      $NetBSD: Makefile,v 1.2 2000/10/07 18:37:09 bjh21 Exp $
+#      $NetBSD: Makefile,v 1.3 2001/01/08 19:16:49 jdolecek Exp $
 #      from: @(#)Makefile      8.1 (Berkeley) 6/6/93
 
 PROG=  sort
-SRCS=  append.c fields.c files.c fsort.c init.c msort.c sort.c tmp.c
+SRCS=  append.c fields.c files.c fsort.c init.c msort.c sort.c
 
 .include <bsd.prog.mk>
diff -r ea6bf95d37b3 -r edb57d9f3cf6 usr.bin/sort/files.c
--- a/usr.bin/sort/files.c      Mon Jan 08 18:58:56 2001 +0000
+++ b/usr.bin/sort/files.c      Mon Jan 08 19:16:49 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: files.c,v 1.6 2000/10/17 15:22:57 jdolecek Exp $       */
+/*     $NetBSD: files.c,v 1.7 2001/01/08 19:16:50 jdolecek Exp $       */
 
 /*-
  * Copyright (c) 1993
@@ -40,7 +40,7 @@
 #include "fsort.h"
 
 #ifndef lint
-__RCSID("$NetBSD: files.c,v 1.6 2000/10/17 15:22:57 jdolecek Exp $");
+__RCSID("$NetBSD: files.c,v 1.7 2001/01/08 19:16:50 jdolecek Exp $");
 __SCCSID("@(#)files.c  8.1 (Berkeley) 6/6/93");
 #endif /* not lint */
 
@@ -356,3 +356,17 @@
        fread(rec->data, rec->length, 1, fp);
        return (0);
 }
+
+/*
+ * Return pointer to an open file stream, err out on failure.
+ */
+FILE *
+ftmp(void)
+{
+       FILE *fp = tmpfile();
+
+       if (fp == NULL)
+               err(2, "tmpfile()");
+
+       return fp;
+}
diff -r ea6bf95d37b3 -r edb57d9f3cf6 usr.bin/sort/sort.c
--- a/usr.bin/sort/sort.c       Mon Jan 08 18:58:56 2001 +0000
+++ b/usr.bin/sort/sort.c       Mon Jan 08 19:16:49 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: sort.c,v 1.11 2001/01/08 18:58:56 jdolecek Exp $       */
+/*     $NetBSD: sort.c,v 1.12 2001/01/08 19:16:50 jdolecek Exp $       */
 
 /*-
  * Copyright (c) 1993
@@ -51,7 +51,7 @@
 #endif /* not lint */
 
 #ifndef lint
-__RCSID("$NetBSD: sort.c,v 1.11 2001/01/08 18:58:56 jdolecek Exp $");
+__RCSID("$NetBSD: sort.c,v 1.12 2001/01/08 19:16:50 jdolecek Exp $");
 __SCCSID("@(#)sort.c   8.1 (Berkeley) 6/6/93");
 #endif /* not lint */
 
@@ -87,8 +87,6 @@
 
 char toutpath[_POSIX_PATH_MAX];
 
-const char *tmpdir;    /* where temporary files should be put */
-
 static void cleanup __P((void));
 static void onsignal __P((int));
 static void usage __P((const char *));
@@ -119,8 +117,6 @@
        ftpos = fldtab;
 
        fixit(&argc, argv);
-       if (!(tmpdir = getenv("TMPDIR")))
-               tmpdir = _PATH_TMP;
 
        while ((ch = getopt(argc, argv, "bcdfik:mHno:rsSt:T:ux")) != -1) {
                switch (ch) {
diff -r ea6bf95d37b3 -r edb57d9f3cf6 usr.bin/sort/tmp.c
--- a/usr.bin/sort/tmp.c        Mon Jan 08 18:58:56 2001 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-/*     $NetBSD: tmp.c,v 1.5 2000/10/16 21:48:15 jdolecek Exp $ */
-
-/*-
- * Copyright (c) 1993
- *     The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Peter McIlroy.
- *
- * 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. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND 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 THE REGENTS OR 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.
- */
-
-#include "sort.h"
-
-#ifndef lint
-__RCSID("$NetBSD: tmp.c,v 1.5 2000/10/16 21:48:15 jdolecek Exp $");
-__SCCSID("@(#)tmp.c    8.1 (Berkeley) 6/6/93");
-#endif /* not lint */
-
-#include <sys/param.h>
-
-#include <err.h>
-#include <errno.h>
-#include <limits.h>
-#include <signal.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-#include "pathnames.h"
-
-#define _NAME_TMP "sort.XXXXXXXX"
-
-FILE *
-ftmp()
-{
-       sigset_t set, oset;
-       FILE *fp;
-       int fd;
-       char pathb[_POSIX_PATH_MAX], *path;
-
-       path = pathb;
-       (void)snprintf(path, sizeof(pathb), "%s%s%s", tmpdir,
-           (tmpdir[strlen(tmpdir)-1] != '/') ? "/" : "", _NAME_TMP);
- 
-       sigfillset(&set);
-       (void)sigprocmask(SIG_BLOCK, &set, &oset);
-       if ((fd = mkstemp(path)) < 0)
-               err(2, "mkstemp(%s)", path);
-       if (!(fp = fdopen(fd, "w+")))
-               err(2, "fdopen(%s)", path);
-       (void)unlink(path);
-
-       (void)sigprocmask(SIG_SETMASK, &oset, NULL);
-       return (fp);
-}



Home | Main Index | Thread Index | Old Index