[TRIVIAL]: rename create_pf_socket() to create_local_socket().
[paraslash.git] / string.c
index 47c5417df576a56c1d710137c02182a3b7600fa5..8b9f1633d95be658c7a6ecc40f291a0e033943bd 100644 (file)
--- a/string.c
+++ b/string.c
@@ -1,19 +1,7 @@
 /*
  * Copyright (C) 2004-2007 Andre Noll <maan@systemlinux.org>
  *
- *     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 2 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, write to the Free Software
- *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * Licensed under the GPL v2. For licencing details see COPYING.
  */
 
 /** \file string.c memory allocation and string handling functions */
@@ -48,8 +36,10 @@ __must_check __malloc void *para_realloc(void *p, size_t size)
         * No need to check for NULL pointers: If p is NULL, the  call
         * to realloc is equivalent to malloc(size)
         */
+       assert(size);
        if (!(p = realloc(p, size))) {
-               PARA_EMERG_LOG("%s", "realloc failed, aborting\n");
+               PARA_EMERG_LOG("realloc failed (size = %zu), aborting\n",
+                       size);
                exit(EXIT_FAILURE);
        }
        return p;
@@ -69,6 +59,7 @@ __must_check __malloc void *para_realloc(void *p, size_t size)
  */
 __must_check __malloc void *para_malloc(size_t size)
 {
+       assert(size);
        void *p = malloc(size);
 
        if (!p) {
@@ -85,8 +76,8 @@ __must_check __malloc void *para_malloc(size_t size)
  *
  * A wrapper for calloc(3) which exits on errors.
  *
- * A pointer to the allocated and zeroed-out memory, which is suitably aligned
- * for any kind  of variable.
+ * \return A pointer to the allocated and zeroed-out memory, which is suitably
+ * aligned for any kind  of variable.
  *
  * \sa calloc(3)
  */
@@ -103,8 +94,8 @@ __must_check __malloc void *para_calloc(size_t size)
  *
  * \param s string to be duplicated
  *
- * A wrapper for strdup(3). It calls exit(EXIT_FAILURE) on errors, i.e. there
- * is no need to check the return value in the caller.
+ * A wrapper for strdup(3). It calls \p exit(EXIT_FAILURE) on errors, i.e.
+ * there is no need to check the return value in the caller.
  *
  * \return A pointer to the duplicated string. If \p s was the NULL pointer,
  * an pointer to an empty string is returned.
@@ -252,8 +243,11 @@ void chop(char *buf)
 __must_check __malloc char *para_tmpname(void)
 {
        struct timeval now;
+       unsigned int seed;
+
        gettimeofday(&now, NULL);
-       srand(now.tv_usec);
+       seed = now.tv_usec;
+       srand(seed);
        return make_message("%08i", rand());
 }
 
@@ -317,13 +311,13 @@ __must_check __malloc char *para_homedir(void)
  * \param argv_ptr  pointer to the list of substrings
  * \param delim delimiter
  *
- * This function modifies \p args by replacing each occurance of \p delim by
- * zero. A NULL-terminated array of pointers to char* is allocated dynamically
+ * This function modifies \a args by replacing each occurance of \a delim by
+ * zero. A \p NULL-terminated array of pointers to char* is allocated dynamically
  * and these pointers are initialized to point to the broken-up substrings
- * within \p args. A pointer to this array is returned via \p argv_ptr. It's OK
- * to call this function with \p args \p == \p NULL.
+ * within \a args. A pointer to this array is returned via \a argv_ptr. It's OK
+ * to call this function with \a args \a == \p NULL.
  *
- * \return The number of substrings found in \p args.
+ * \return The number of substrings found in \a args.
  */
 __must_check unsigned split_args(char *args, char ***argv_ptr, const char *delim)
 {