wsproxy: Mac OS X build fixes
- pass CFLAGS and LDFLAGS in case one needs to use -m32 - link to libcrypto for _ERR_print_errors_fp - __THROW is non-standard define it to nothing by default - use b64_ntop and b64_pton instead of mangled versions, OSX doesn't mangle them in the same way - access() takes two arguments! Signed-off-by: François Revol <revol@free.fr>
This commit is contained in:
parent
1f758e87d3
commit
f61274c827
|
@ -1,10 +1,10 @@
|
|||
wsproxy: wsproxy.o websocket.o md5.o
|
||||
$(CC) $^ -l ssl -l resolv -o $@
|
||||
$(CC) $(LDFLAGS) $^ -l ssl -lcrypto -l resolv -o $@
|
||||
|
||||
websocket.o: websocket.c websocket.h md5.h
|
||||
wsproxy.o: wsproxy.c websocket.h
|
||||
md5.o: md5.c md5.h
|
||||
$(CC) -c -o $@ $*.c -DHAVE_MEMCPY -DSTDC_HEADERS
|
||||
$(CC) $(CFLAGS) -c -o $@ $*.c -DHAVE_MEMCPY -DSTDC_HEADERS
|
||||
|
||||
clean:
|
||||
rm -f wsproxy wsproxy.o websocket.o md5.o
|
||||
|
|
|
@ -36,6 +36,10 @@
|
|||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef __THROW
|
||||
#define __THROW
|
||||
#endif
|
||||
|
||||
#include "md5.h"
|
||||
|
||||
#ifdef _LIBC
|
||||
|
|
|
@ -191,7 +191,7 @@ int encode(u_char const *src, size_t srclength, char *target, size_t targsize) {
|
|||
int i, sz = 0, len = 0;
|
||||
unsigned char chr;
|
||||
target[sz++] = '\x00';
|
||||
len = __b64_ntop(src, srclength, target+sz, targsize-sz);
|
||||
len = b64_ntop(src, srclength, target+sz, targsize-sz);
|
||||
if (len < 0) {
|
||||
return len;
|
||||
}
|
||||
|
@ -213,7 +213,7 @@ int decode(char *src, size_t srclength, u_char *target, size_t targsize) {
|
|||
/* We may have more than one frame */
|
||||
end = memchr(start, '\xff', srclength);
|
||||
*end = '\x00';
|
||||
len = __b64_pton(start, target+retlen, targsize-retlen);
|
||||
len = b64_pton(start, target+retlen, targsize-retlen);
|
||||
if (len < 0) {
|
||||
return len;
|
||||
}
|
||||
|
|
|
@ -324,7 +324,7 @@ int main(int argc, char *argv[])
|
|||
|
||||
if (ssl_only) {
|
||||
printf("cert: %s\n", settings.cert);
|
||||
if (!settings.cert || !access(settings.cert)) {
|
||||
if (!settings.cert || !access(settings.cert, R_OK)) {
|
||||
usage("SSL only and cert file not found\n");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue