Changeset 154

Show
Ignore:
Timestamp:
06/04/07 21:47:49 (18 months ago)
Author:
zany
Message:

win32 fixes

Location:
trunk
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • trunk/apps/obexftp.c

    r151 r154  
    4141void DEBUG(unsigned int n, ...) { } 
    4242void DUMPBUFFER(unsigned int n, char *label, char *msg) { } 
     43#endif /* _WIN32 */ 
     44 
     45#ifdef _WIN32 
     46#define strcasestr strstr 
    4347#endif /* _WIN32 */ 
    4448 
     
    510514#ifdef HAVE_USB 
    511515                case 'u': 
     516#ifndef _WIN32 
    512517                        if (geteuid() != 0) 
    513518                                fprintf(stderr, "If USB doesn't work setup permissions in udev or run as superuser.\n"); 
     519#endif 
    514520                        transport = OBEX_TRANS_USB; 
    515521                        device = NULL; 
  • trunk/apps/obexftp_sdp.c

    r114 r154  
    3131#include <stdlib.h> 
    3232#include <string.h> 
     33#include <sys/types.h> 
     34#ifdef _WIN32 
     35#include <winsock2.h> 
     36#else 
     37#include <sys/socket.h> 
     38#endif 
     39 
     40#ifndef _WIN32 
    3341#include <syslog.h> 
    34 #include <sys/types.h> 
    35 #include <sys/socket.h> 
     42#define log_err(format, args...) syslog(LOG_ERR, format, ##args) 
     43#define log_err_prefix "ObexFTPd: " 
     44#else 
     45#include <stdio.h> 
     46#define log_err(format, args...) fprintf(stderr, format, ##args) 
     47#define log_err_prefix "" 
     48#endif 
    3649 
    3750#ifdef HAVE_SDPLIB 
     
    5366{ 
    5467        if (record && sdp_record_unregister(session, record)) 
    55                 syslog(LOG_ERR, "Service record unregistration failed."); 
     68                log_err("Service record unregistration failed."); 
    5669 
    5770        sdp_close(session); 
     
    7285        session = sdp_connect(BDADDR_ANY, BDADDR_LOCAL, 0); 
    7386        if (!session) { 
    74                 syslog(LOG_ERR, "Failed to connect to the local SDP server. %s(%d)",  
     87                log_err("Failed to connect to the local SDP server. %s(%d)",  
    7588                                strerror(errno), errno); 
    7689                return -1; 
     
    7992        record = sdp_record_alloc(); 
    8093        if (!record) { 
    81                 syslog(LOG_ERR, "Failed to allocate service record %s(%d)",  
     94                log_err("Failed to allocate service record %s(%d)",  
    8295                                strerror(errno), errno); 
    8396                sdp_close(session); 
     
    132145        status = sdp_device_record_register(session, BDADDR_ANY, record, 0); 
    133146        if (status) { 
    134                 syslog(LOG_ERR, "SDP registration failed."); 
     147                log_err("SDP registration failed."); 
    135148                sdp_record_free(record); record = NULL; 
    136149                sdp_close(session); 
     
    162175        s = sdp_connect(src, dst, 0); 
    163176        if (!s) { 
    164                 syslog(LOG_ERR, "Failed to connect to the SDP server. %s(%d)", 
     177                log_err("Failed to connect to the SDP server. %s(%d)", 
    165178                                strerror(errno), errno); 
    166179                return 0; 
     
    187200int obexftp_sdp_register(void) 
    188201{ 
    189         syslog(LOG_ERR, "SDP not supported."); 
     202        log_err("SDP not supported."); 
    190203        return -1; 
    191204} 
  • trunk/apps/obexftpd.c

    r129 r154  
    3737#include <errno.h> 
    3838#include <sys/types.h> 
     39#include <fcntl.h> 
     40#ifdef _WIN32 
     41#include <winsock2.h> 
     42#define S_IRGRP 0 
     43#define S_IROTH 0 
     44#define S_IWGRP 0 
     45#define S_IWOTH 0 
     46#define S_IXGRP 0 
     47#define S_IXOTH 0 
     48#define sleep(n)        Sleep((n) * 1000) 
     49#define mkdir(dir,mode) _mkdir(dir) 
     50#define lstat stat 
     51#else 
    3952#include <netinet/in.h> 
    40 #include <fcntl.h> 
    4153#include <sys/socket.h> 
    4254#include <netdb.h> 
     55#endif 
    4356 
    4457/* just until there is a server layer in obexftp */ 
     
    6174 
    6275 
     76#ifdef HAVE_BLUETOOTH 
    6377static bdaddr_t *bt_src = NULL; 
     78#endif 
    6479static char *device = NULL; 
    6580static int channel = 10; /* OBEX_PUSH_HANDLE */ 
     
    7590int verbose = 0; 
    7691 
    77 static in_addr_t inaddr_any = INADDR_ANY; 
     92// this whole thing needs a review: 
    7893static int parsehostport(const char *name, char **host, int *port) { 
    7994        struct hostent *e; 
     
    89104        } 
    90105 
    91         inaddr_any = INADDR_ANY; 
    92         *host = (char *)&inaddr_any; 
     106        *host = "0.0.0.0"; 
    93107 
    94108        if (sscanf(p, "%hhu.%hhu.%hhu.%hhu", &n[0], &n[1], &n[2], &n[3]) == 4) { 
    95                 inaddr_any = (in_addr_t) (*n); 
     109                *host = strdup(p); 
    96110        } else { 
    97111                e = gethostbyname(p); 
    98112                if (e) { 
    99                         *host = e->h_addr_list[0]; 
     113                        *host = e->h_addr_list[0]; // inet_ntoa needed! 
    100114                } 
    101115        } 
     
    859873                saddr.sin_family = AF_INET; 
    860874                saddr.sin_port = htons(channel); 
    861                 saddr.sin_addr.s_addr = (in_addr_t)*device; //INADDR_ANY; 
     875#ifdef _WIN32 
     876                saddr.sin_addr.s_addr = inet_addr(device); 
     877#else 
     878                (void) inet_aton(device, &saddr.sin_addr); 
     879#endif 
    862880                //InOBEX_ServerRegister(handle); /* always port 650 */ 
    863881                if (0 > OBEX_ServerRegister(handle, (struct sockaddr *)&saddr, sizeof(saddr))) { 
     
    866884                } 
    867885                break; 
     886#ifdef HAVE_BLUETOOTH 
    868887        case OBEX_TRANS_BLUETOOTH: 
    869888                if (0 > BtOBEX_ServerRegister(handle, bt_src, channel)) { 
     
    872891                } 
    873892                break; 
     893#endif 
    874894        case OBEX_TRANS_IRDA: 
    875895                if (0 > IrOBEX_ServerRegister(handle, "")) { 
  • trunk/bfb/bfb.c

    r106 r154  
    3939/* htons */ 
    4040#ifdef _WIN32 
    41 #include <winsock.h> 
     41#include <winsock2.h> 
    4242#else 
    4343#include <netinet/in.h> 
  • trunk/multicobex/multi_cobex.c

    r126 r154  
    4646#include <windows.h> 
    4747#include <stdlib.h> 
     48#define sleep(t) Sleep((t) * 1000) 
     49#define usleep(t) Sleep((t) < 500 ? 1 : ((t) + 500) / 1000); 
    4850#else 
    4951#include <sys/ioctl.h> 
  • trunk/obexftp/client.c

    r152 r154  
    3939 
    4040#ifdef _WIN32 
    41 #include <winsock.h> 
     41#include <winsock2.h> 
    4242#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT 
    4343#define S_IRGRP 0 
     
    545545                        break; 
    546546                } 
    547                 if (inet_aton(device, &peer.sin_addr)) { 
     547#ifdef _WIN32 
     548                peer.sin_addr.s_addr = inet_addr(device); 
     549                ret = (peer.sin_addr.s_addr == INADDR_NONE) ? 0 : 1; 
     550#else 
     551                ret = inet_aton(device, &peer.sin_addr); 
     552#endif 
     553                if (ret) { 
    548554                        peer.sin_family = AF_INET; 
    549555                        peer.sin_port = htons(port); /* overridden with OBEX_PORT 650 anyhow */