openocd: fix SPDX tag format for files .c
[fw/openocd] / src / helper / replacements.c
index 2020003f0e3a7d3de31ee513c91cd95a8d7c9f13..b30dbd5d68830a151d8d7056c5a7ec4c18db1c37 100644 (file)
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
 /***************************************************************************
  *   Copyright (C) 2006 by Dominic Rath                                    *
  *   Dominic.Rath@gmx.de                                                   *
@@ -7,21 +9,6 @@
  *                                                                         *
  *   Copyright (C) 2008 by Spencer Oliver                                  *
  *   spen@spen-soft.co.uk                                                  *
- *                                                                         *
- *   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-1307, USA.             *
  ***************************************************************************/
 /* DANGER!!!! These must be defined *BEFORE* replacements.h and the malloc() macro!!!! */
 
@@ -35,7 +22,7 @@
 void *clear_malloc(size_t size)
 {
        void *t = malloc(size);
-       if (t != NULL)
+       if (t)
                memset(t, 0x00, size);
        return t;
 }
@@ -43,7 +30,7 @@ void *clear_malloc(size_t size)
 void *fill_malloc(size_t size)
 {
        void *t = malloc(size);
-       if (t != NULL) {
+       if (t) {
                /* We want to initialize memory to some known bad state.
                 * 0 and 0xff yields 0 and -1 as integers, which often
                 * have meaningful values. 0x5555... is not often a valid
@@ -64,6 +51,7 @@ void *fill_malloc(size_t size)
 
 #ifdef _WIN32
 #include <io.h>
+#include <winsock2.h>
 #endif
 
 /* replacements for gettimeofday */
@@ -89,12 +77,9 @@ int gettimeofday(struct timeval *tv, struct timezone *tz)
                GetSystemTimeAsFileTime(&ft);
                li.LowPart  = ft.dwLowDateTime;
                li.HighPart = ft.dwHighDateTime;
-               t  = li.QuadPart;                                       /* In 100-nanosecond
-                                                                        *intervals */
-               t -= EPOCHFILETIME;                                     /* Offset to the Epoch time
-                                                                        **/
-               t /= 10;                                                        /* In microseconds
-                                                                                **/
+               t  = li.QuadPart;                                       /* In 100-nanosecond intervals */
+               t -= EPOCHFILETIME;                                     /* Offset to the Epoch time */
+               t /= 10;                                                        /* In microseconds */
                tv->tv_sec  = (long)(t / 1000000);
                tv->tv_usec = (long)(t % 1000000);
        }
@@ -126,9 +111,9 @@ size_t strnlen(const char *s, size_t maxlen)
 char *strndup(const char *s, size_t n)
 {
        size_t len = strnlen(s, n);
-       char *new = (char *) malloc(len + 1);
+       char *new = malloc(len + 1);
 
-       if (new == NULL)
+       if (!new)
                return NULL;
 
        new[len] = '\0';
@@ -149,10 +134,10 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time
        struct timeval tvslice;
        int retcode;
 
-#define SAFE_FD_ISSET(fd, set)  (set != NULL && FD_ISSET(fd, set))
+#define SAFE_FD_ISSET(fd, set)  (set && FD_ISSET(fd, set))
 
        /* calculate how long we need to wait in milliseconds */
-       if (tv == NULL)
+       if (!tv)
                ms_total = INFINITE;
        else {
                ms_total = tv->tv_sec * 1000;
@@ -209,10 +194,11 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time
                        aexcept = sock_except;
 
                        tvslice.tv_sec = 0;
-                       tvslice.tv_usec = 100000;
+                       tvslice.tv_usec = 1000;
 
                        retcode = select(sock_max_fd + 1, &aread, &awrite, &aexcept, &tvslice);
                }
+
                if (n_handles > 0) {
                        /* check handles */
                        DWORD wret;
@@ -220,7 +206,7 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time
                        wret = MsgWaitForMultipleObjects(n_handles,
                                        handles,
                                        FALSE,
-                                       retcode > 0 ? 0 : 100,
+                                       retcode > 0 ? 0 : 1,
                                        QS_ALLEVENTS);
 
                        if (wret == WAIT_TIMEOUT) {
@@ -236,24 +222,21 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time
                                if (retcode < 0)
                                        retcode = 0;
                                for (i = 0; i < n_handles; i++) {
-                                       if (WAIT_OBJECT_0 == WaitForSingleObject(handles[i], 0)) {
+                                       if (WaitForSingleObject(handles[i], 0) == WAIT_OBJECT_0) {
                                                if (SAFE_FD_ISSET(handle_slot_to_fd[i], rfds)) {
-                                                       DWORD dwBytes;
+                                                       DWORD bytes;
                                                        intptr_t handle = (intptr_t) _get_osfhandle(
                                                                        handle_slot_to_fd[i]);
 
                                                        if (PeekNamedPipe((HANDLE)handle, NULL, 0,
-                                                                   NULL, &dwBytes, NULL)) {
-                                                               /* check to see if gdb pipe has data
-                                                                *available */
-                                                               if (dwBytes) {
-                                                                       FD_SET(handle_slot_to_fd[i],
-                                                                               &aread);
+                                                                   NULL, &bytes, NULL)) {
+                                                               /* check to see if gdb pipe has data available */
+                                                               if (bytes) {
+                                                                       FD_SET(handle_slot_to_fd[i], &aread);
                                                                        retcode++;
                                                                }
                                                        } else {
-                                                               FD_SET(handle_slot_to_fd[i],
-                                                                       &aread);
+                                                               FD_SET(handle_slot_to_fd[i], &aread);
                                                                retcode++;
                                                        }
                                                }