From 4aaeb5fd68570587502494b43ff2d2f6d4616cad Mon Sep 17 00:00:00 2001 From: Álvaro Fernández Rojas Date: Wed, 11 Jun 2014 00:33:55 +0200 Subject: xupnpd: Import r398 from packages and update to r399. --- multimedia/xupnpd/patches/100-default_config.patch | 15 ++++ multimedia/xupnpd/patches/101-root_dir_param.patch | 83 ++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 multimedia/xupnpd/patches/100-default_config.patch create mode 100644 multimedia/xupnpd/patches/101-root_dir_param.patch (limited to 'multimedia/xupnpd/patches') diff --git a/multimedia/xupnpd/patches/100-default_config.patch b/multimedia/xupnpd/patches/100-default_config.patch new file mode 100644 index 000000000..89958c7fe --- /dev/null +++ b/multimedia/xupnpd/patches/100-default_config.patch @@ -0,0 +1,15 @@ +--- a/xupnpd.lua ++++ b/xupnpd.lua +@@ -1,10 +1,10 @@ + cfg={} + + -- multicast interface for SSDP exchange, 'eth0', 'br0', 'br-lan' for example +-cfg.ssdp_interface='lo' ++cfg.ssdp_interface='br-lan' + + -- 'cfg.ssdp_loop' enables multicast loop (if player and server in one host) +-cfg.ssdp_loop=1 ++cfg.ssdp_loop=0 + + -- SSDP announcement interval + cfg.ssdp_notify_interval=15 diff --git a/multimedia/xupnpd/patches/101-root_dir_param.patch b/multimedia/xupnpd/patches/101-root_dir_param.patch new file mode 100644 index 000000000..68ea3e82e --- /dev/null +++ b/multimedia/xupnpd/patches/101-root_dir_param.patch @@ -0,0 +1,83 @@ +--- a/main.cpp ++++ b/main.cpp +@@ -4,11 +4,14 @@ + * https://tsdemuxer.googlecode.com/svn/trunk/xupnpd + */ + ++#include + #include + #include + #include + #include + #include ++#include ++#include + #include "luacompat.h" + #include "luaxlib.h" + #include "luaxcore.h" +@@ -16,35 +19,36 @@ + + int main(int argc,char** argv) + { +- const char* p=strrchr(argv[0],'/'); +- +- int rc; +- +- if(p) +- { +- char location[512]; +- int n=p-argv[0]; +- if(n>=sizeof(location)) +- n=sizeof(location)-1; +- strncpy(location,argv[0],n); +- location[n]=0; +- +- rc=chdir(location); +- +- argv[0]=(char*)p+1; +- } +- +- const char* root=getenv("XUPNPDROOTDIR"); +- if(root && *root) +- rc=chdir(root); +- +- { +- FILE* fp=fopen("xupnpd.lua","r"); +- if(fp) +- fclose(fp); +- else +- rc=chdir("/usr/share/xupnpd/"); +- } ++ int c; ++ char *xupnpd_root = "/usr/share/xupnpd/"; ++ struct stat s; ++ ++ opterr = 0; ++ while ((c = getopt (argc, argv, "d:")) != -1) { ++ switch (c) { ++ case 'd': ++ xupnpd_root = optarg; ++ break; ++ case '?': ++ if (optopt == 'd') ++ fprintf(stderr, "Option -%c requires an argument.\n", optopt); ++ else if (isprint(optopt)) ++ fprintf(stderr, "Unknown option \"-%c\".\n", optopt); ++ else ++ fprintf(stderr, "Unknown option\n"); ++ return 1; ++ default: ++ abort(); ++ } ++ } ++ ++ if(stat(xupnpd_root, &s) != -1 && S_ISDIR(s.st_mode)) { ++ c = chdir(xupnpd_root); ++ } ++ else { ++ fprintf(stderr, "Directory %s doesn't exist.\n", xupnpd_root); ++ return 1; ++ } + + lua_State* L=lua_open(); + if(L) -- cgit v1.2.3