mlmmj_bounce_SOURCES = mlmmj-bounce.c print-version.c log_error.c \
subscriberfuncs.c strgen.c random-int.c writen.c \
- prepstdreply.c mygetline.c openrandexclrw.c chomp.c \
- getlistaddr.c memory.c
+ prepstdreply.c mygetline.c chomp.c getlistaddr.c \
+ memory.c
mlmmj_maintd_SOURCES = mlmmj-maintd.c print-version.c log_error.c mygetline.c \
- strgen.c random-int.c chomp.c writen.c \
- openrandexclrw.c memory.c
+ strgen.c random-int.c chomp.c writen.c memory.c
+++ /dev/null
-/* Copyright (C) 2004 Mads Martin Joergensen <mmj at mmj dot dk>,
- * Morten K. Poulsen <morten at afdelingp dot dk>
- *
- * $Id$
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- * IN THE SOFTWARE.
- */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <errno.h>
-
-#include "strgen.h"
-#include "wrappers.h"
-#include "memory.h"
-
-int openrandexclrw(const char *dir, const char *prefix, mode_t mode)
-{
- int fd;
- char *filename = NULL, *randomstr;
-
- do {
- randomstr = random_str();
- myfree(filename); /* It is OK to free NULL, as this
- will do in the first iteration. */
- filename = concatstr(4, dir, "/", prefix, randomstr);
- myfree(randomstr);
-
- fd = open(filename, O_RDWR|O_CREAT|O_EXCL, mode);
-
- } while ((fd < 0) && (errno == EEXIST));
-
- return fd;
-}