Browse Source

remote_bitbang: fix native windows build

Change-Id: Ied29ade0346c4595ffc1dafa788e2d5a595e0de3
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/648
Tested-by: jenkins
Reviewed-by: Xiaofan <xiaofanc@gmail.com>
tags/v0.6.0-rc1
Spencer Oliver 10 years ago
parent
commit
8cb0dae823
2 changed files with 16 additions and 5 deletions
  1. +9
    -0
      src/helper/replacements.h
  2. +7
    -5
      src/jtag/drivers/remote_bitbang.c

+ 9
- 0
src/helper/replacements.h View File

@@ -139,6 +139,15 @@ static inline unsigned usleep(unsigned int usecs)
#include <windows.h>
#include <time.h>

#include <helper/types.h>

/* Windows does not declare sockaddr_un */
#define UNIX_PATH_LEN 108
struct sockaddr_un {
uint16_t sun_family;
char sun_path[UNIX_PATH_LEN];
};

/* win32 systems do not support ETIMEDOUT */

#ifndef ETIMEDOUT


+ 7
- 5
src/jtag/drivers/remote_bitbang.c View File

@@ -22,14 +22,16 @@
#include "config.h"
#endif

#include <sys/socket.h>
#ifndef _WIN32
#include <sys/un.h>
#include <netdb.h>
#endif
#include <jtag/interface.h>
#include "bitbang.h"

/* from unix man page and sys/un.h: */
#define UNIX_PATH_MAX 108
#ifndef UNIX_PATH_LEN
#define UNIX_PATH_LEN 108
#endif

/* arbitrary limit on host name length: */
#define REMOTE_BITBANG_HOST_MAX 255
@@ -199,8 +201,8 @@ static int remote_bitbang_init_unix(void)

struct sockaddr_un addr;
addr.sun_family = AF_UNIX;
strncpy(addr.sun_path, remote_bitbang_host, UNIX_PATH_MAX);
addr.sun_path[UNIX_PATH_MAX-1] = '\0';
strncpy(addr.sun_path, remote_bitbang_host, UNIX_PATH_LEN);
addr.sun_path[UNIX_PATH_LEN-1] = '\0';

if (connect(fd, (struct sockaddr *)&addr, sizeof(struct sockaddr_un)) < 0) {
LOG_ERROR("connect: %s", strerror(errno));


Loading…
Cancel
Save