mirror of https://github.com/joan2937/pigpio
Merge pull request #43 from BjoernSch/master
Bind to localhost only/ Make the installation directory changeable
This commit is contained in:
commit
0549fcc2af
49
MakeRemote
49
MakeRemote
|
@ -8,6 +8,13 @@ CFLAGS += -O3 -Wall -pthread
|
|||
|
||||
ALL = libpigpiod_if.so libpigpiod_if2.so pigs x_pigpiod_if x_pigpiod_if2
|
||||
|
||||
prefix = /usr/local
|
||||
exec_prefix = $(prefix)
|
||||
bindir = $(exec_prefix)/bin
|
||||
includedir = $(prefix)/include
|
||||
libdir = $(prefix)/lib
|
||||
mandir = $(prefix)/man
|
||||
|
||||
all: $(ALL) pigpio.py setup.py
|
||||
|
||||
pigpiod_if.o: pigpiod_if.c pigpio.h command.h pigpiod_if.h
|
||||
|
@ -32,37 +39,37 @@ clean:
|
|||
rm -f *.o *.i *.s *~ $(ALL)
|
||||
|
||||
install: $(LIB1) $(LIB2)
|
||||
install -m 0755 -d /usr/local/include
|
||||
install -m 0644 pigpio.h /usr/local/include
|
||||
install -m 0644 pigpiod_if.h /usr/local/include
|
||||
install -m 0644 pigpiod_if2.h /usr/local/include
|
||||
install -m 0755 -d /usr/local/lib
|
||||
install -m 0644 libpigpiod_if.so /usr/local/lib
|
||||
install -m 0644 libpigpiod_if2.so /usr/local/lib
|
||||
install -m 0755 -d /usr/local/bin
|
||||
install -m 0755 pigs /usr/local/bin
|
||||
install -m 0755 -d $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpio.h $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpiod_if.h $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpiod_if2.h $(DESTDIR)$(includedir)
|
||||
install -m 0755 -d $(DESTDIR)$(libdir)
|
||||
install -m 0644 libpigpiod_if.so $(DESTDIR)$(libdir)
|
||||
install -m 0644 libpigpiod_if2.so $(DESTDIR)$(libdir)
|
||||
install -m 0755 -d $(DESTDIR)$(bindir)
|
||||
install -m 0755 pigs $(DESTDIR)$(bindir)
|
||||
python2 setup.py install
|
||||
python3 setup.py install
|
||||
install -m 0755 -d /usr/local/man/man1
|
||||
install -m 0644 *.1 /usr/local/man/man1
|
||||
install -m 0755 -d /usr/local/man/man3
|
||||
install -m 0644 *.3 /usr/local/man/man3
|
||||
install -m 0755 -d $(DESTDIR)$(mandir)/man1
|
||||
install -m 0644 *.1 $(DESTDIR)$(mandir)/man1
|
||||
install -m 0755 -d $(DESTDIR)$(mandir)/man3
|
||||
install -m 0644 *.3 $(DESTDIR)$(mandir)/man3
|
||||
|
||||
uninstall:
|
||||
rm -f /usr/local/include/pigpio.h
|
||||
rm -f /usr/local/include/pigpiod_if.h
|
||||
rm -f /usr/local/include/pigpiod_if2.h
|
||||
rm -f /usr/local/lib/libpigpiod_if.so
|
||||
rm -f /usr/local/lib/libpigpiod_if2.so
|
||||
rm -f $(DESTDIR)$(includedir)/pigpio.h
|
||||
rm -f $(DESTDIR)$(includedir)/pigpiod_if.h
|
||||
rm -f $(DESTDIR)$(includedir)/pigpiod_if2.h
|
||||
rm -f $(DESTDIR)$(libdir)/libpigpiod_if.so
|
||||
rm -f $(DESTDIR)$(libdir)/libpigpiod_if2.so
|
||||
echo removing python2 files
|
||||
python2 setup.py install --record /tmp/pigpio >/dev/null
|
||||
xargs rm -f < /tmp/pigpio >/dev/null
|
||||
echo removing python3 files
|
||||
python3 setup.py install --record /tmp/pigpio >/dev/null
|
||||
xargs rm -f < /tmp/pigpio >/dev/null
|
||||
rm -f /usr/local/bin/pigs
|
||||
rm -f /usr/local/man/man1/pig*.1
|
||||
rm -f /usr/local/man/man3/pig*.3
|
||||
rm -f $(DESTDIR)$(bindir)/pigs
|
||||
rm -f $(DESTDIR)$(mandir)/man1/pig*.1
|
||||
rm -f $(DESTDIR)$(mandir)/man3/pig*.3
|
||||
|
||||
LL1 = -L. -lpigpiod_if -pthread -lrt
|
||||
LL2 = -L. -lpigpiod_if2 -pthread -lrt
|
||||
|
|
63
Makefile
63
Makefile
|
@ -27,6 +27,13 @@ LL2 = -L. -lpigpiod_if -pthread -lrt
|
|||
|
||||
LL3 = -L. -lpigpiod_if2 -pthread -lrt
|
||||
|
||||
prefix = /usr/local
|
||||
exec_prefix = $(prefix)
|
||||
bindir = $(exec_prefix)/bin
|
||||
includedir = $(prefix)/include
|
||||
libdir = $(prefix)/lib
|
||||
mandir = $(prefix)/man
|
||||
|
||||
all: $(ALL)
|
||||
|
||||
pigpio.o: pigpio.c pigpio.h command.h custom.cext
|
||||
|
@ -63,41 +70,41 @@ clean:
|
|||
rm -f *.o *.i *.s *~ $(ALL)
|
||||
|
||||
install: $(ALL)
|
||||
install -m 0755 -d /opt/pigpio/cgi
|
||||
install -m 0755 -d /usr/local/include
|
||||
install -m 0644 pigpio.h /usr/local/include
|
||||
install -m 0644 pigpiod_if.h /usr/local/include
|
||||
install -m 0644 pigpiod_if2.h /usr/local/include
|
||||
install -m 0755 -d /usr/local/lib
|
||||
install -m 0755 libpigpio.so /usr/local/lib
|
||||
install -m 0755 libpigpiod_if.so /usr/local/lib
|
||||
install -m 0755 libpigpiod_if2.so /usr/local/lib
|
||||
install -m 0755 -d /usr/local/bin
|
||||
install -m 0755 -s pig2vcd /usr/local/bin
|
||||
install -m 0755 -s pigpiod /usr/local/bin
|
||||
install -m 0755 -s pigs /usr/local/bin
|
||||
install -m 0755 -d $(DESTDIR)/opt/pigpio/cgi
|
||||
install -m 0755 -d $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpio.h $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpiod_if.h $(DESTDIR)$(includedir)
|
||||
install -m 0644 pigpiod_if2.h $(DESTDIR)$(includedir)
|
||||
install -m 0755 -d $(DESTDIR)$(libdir)
|
||||
install -m 0755 libpigpio.so $(DESTDIR)$(libdir)
|
||||
install -m 0755 libpigpiod_if.so $(DESTDIR)$(libdir)
|
||||
install -m 0755 libpigpiod_if2.so $(DESTDIR)$(libdir)
|
||||
install -m 0755 -d $(DESTDIR)$(bindir)
|
||||
install -m 0755 -s pig2vcd $(DESTDIR)$(bindir)
|
||||
install -m 0755 -s pigpiod $(DESTDIR)$(bindir)
|
||||
install -m 0755 -s pigs $(DESTDIR)$(bindir)
|
||||
if which python2; then python2 setup.py install; fi
|
||||
if which python3; then python3 setup.py install; fi
|
||||
install -m 0755 -d /usr/local/man/man1
|
||||
install -m 0644 *.1 /usr/local/man/man1
|
||||
install -m 0755 -d /usr/local/man/man3
|
||||
install -m 0644 *.3 /usr/local/man/man3
|
||||
install -m 0755 -d $(DESTDIR)$(mandir)/man1
|
||||
install -m 0644 *.1 $(DESTDIR)$(mandir)/man1
|
||||
install -m 0755 -d $(DESTDIR)$(mandir)/man3
|
||||
install -m 0644 *.3 $(DESTDIR)$(mandir)/man3
|
||||
ldconfig
|
||||
|
||||
uninstall:
|
||||
rm -f /usr/local/include/pigpio.h
|
||||
rm -f /usr/local/include/pigpiod_if.h
|
||||
rm -f /usr/local/include/pigpiod_if2.h
|
||||
rm -f /usr/local/lib/libpigpio.so
|
||||
rm -f /usr/local/lib/libpigpiod_if.so
|
||||
rm -f /usr/local/lib/libpigpiod_if2.so
|
||||
rm -f /usr/local/bin/pig2vcd
|
||||
rm -f /usr/local/bin/pigpiod
|
||||
rm -f /usr/local/bin/pigs
|
||||
rm -f $(DESTDIR)$(includedir)/pigpio.h
|
||||
rm -f $(DESTDIR)$(includedir)/pigpiod_if.h
|
||||
rm -f $(DESTDIR)$(includedir)/pigpiod_if2.h
|
||||
rm -f $(DESTDIR)$(libdir)/libpigpio.so
|
||||
rm -f $(DESTDIR)$(libdir)/libpigpiod_if.so
|
||||
rm -f $(DESTDIR)$(libdir)/libpigpiod_if2.so
|
||||
rm -f $(DESTDIR)$(bindir)/pig2vcd
|
||||
rm -f $(DESTDIR)$(bindir)/pigpiod
|
||||
rm -f $(DESTDIR)$(bindir)/pigs
|
||||
if which python2; then python2 setup.py install --record /tmp/pigpio >/dev/null; xargs rm -f < /tmp/pigpio >/dev/null; fi
|
||||
if which python3; then python3 setup.py install --record /tmp/pigpio >/dev/null; xargs rm -f < /tmp/pigpio >/dev/null; fi
|
||||
rm -f /usr/local/man/man1/pig*.1
|
||||
rm -f /usr/local/man/man3/pig*.3
|
||||
rm -f $(DESTDIR)$(mandir)/man1/pig*.1
|
||||
rm -f $(DESTDIR)$(mandir)/man3/pig*.3
|
||||
ldconfig
|
||||
|
||||
$(LIB1): $(OBJ1)
|
||||
|
|
11
pigpio.c
11
pigpio.c
|
@ -7496,7 +7496,14 @@ int initInitialise(void)
|
|||
if (portStr) port = atoi(portStr); else port = gpioCfg.socketPort;
|
||||
|
||||
server.sin_family = AF_INET;
|
||||
server.sin_addr.s_addr = INADDR_ANY;
|
||||
if (gpioCfg.ifFlags & PI_LOCALHOST_SOCK_IF)
|
||||
{
|
||||
server.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
|
||||
}
|
||||
else
|
||||
{
|
||||
server.sin_addr.s_addr = htonl(INADDR_ANY);
|
||||
}
|
||||
server.sin_port = htons(port);
|
||||
|
||||
if (bind(fdSock,(struct sockaddr *)&server , sizeof(server)) < 0)
|
||||
|
@ -11508,7 +11515,7 @@ int gpioCfgInterfaces(unsigned ifFlags)
|
|||
|
||||
CHECK_NOT_INITED;
|
||||
|
||||
if (ifFlags > 3)
|
||||
if (ifFlags > 7)
|
||||
SOFT_ERROR(PI_BAD_IF_FLAGS, "bad ifFlags (%X)", ifFlags);
|
||||
|
||||
gpioCfg.ifFlags = ifFlags;
|
||||
|
|
1
pigpio.h
1
pigpio.h
|
@ -733,6 +733,7 @@ typedef void *(gpioThreadFunc_t) (void *);
|
|||
|
||||
#define PI_DISABLE_FIFO_IF 1
|
||||
#define PI_DISABLE_SOCK_IF 2
|
||||
#define PI_LOCALHOST_SOCK_IF 4
|
||||
|
||||
/* memAllocMode */
|
||||
|
||||
|
|
|
@ -93,6 +93,7 @@ void usage()
|
|||
" -e value, secondary DMA channel, 0-6, default 5\n" \
|
||||
" -f, disable fifo interface, default enabled\n" \
|
||||
" -k, disable socket interface, default enabled\n" \
|
||||
" -l, localhost socket only default all interfaces\n" \
|
||||
" -p value, socket port, 1024-32000, default 8888\n" \
|
||||
" -s value, sample rate, 1, 2, 4, 5, 8, or 10, default 5\n" \
|
||||
" -t value, clock peripheral, 0=PWM 1=PCM, default PCM\n" \
|
||||
|
@ -120,7 +121,7 @@ static void initOpts(int argc, char *argv[])
|
|||
int opt, err, i;
|
||||
int64_t mask;
|
||||
|
||||
while ((opt = getopt(argc, argv, "a:b:c:d:e:fkp:s:t:x:")) != -1)
|
||||
while ((opt = getopt(argc, argv, "a:b:c:d:e:fklp:s:t:x:")) != -1)
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
|
@ -167,6 +168,10 @@ static void initOpts(int argc, char *argv[])
|
|||
ifFlags |= PI_DISABLE_SOCK_IF;
|
||||
break;
|
||||
|
||||
case 'l':
|
||||
ifFlags |= PI_LOCALHOST_SOCK_IF;
|
||||
break;
|
||||
|
||||
case 'p':
|
||||
i = getNum(optarg, &err);
|
||||
if ((i >= PI_MIN_SOCKET_PORT) && (i <= PI_MAX_SOCKET_PORT))
|
||||
|
|
Loading…
Reference in New Issue