[141278] trunk/dports/net
ryandesign at macports.org
ryandesign at macports.org
Tue Oct 13 23:32:32 PDT 2015
Revision: 141278
https://trac.macports.org/changeset/141278
Author: ryandesign at macports.org
Date: 2015-10-13 23:32:32 -0700 (Tue, 13 Oct 2015)
Log Message:
-----------
docsis: new port, version 0.9.6 (#49268)
Added Paths:
-----------
trunk/dports/net/docsis/
trunk/dports/net/docsis/Portfile
trunk/dports/net/docsis/files/
trunk/dports/net/docsis/files/net-snmp-5.4.patch
trunk/dports/net/docsis/files/prog_name.patch
Added: trunk/dports/net/docsis/Portfile
===================================================================
--- trunk/dports/net/docsis/Portfile (rev 0)
+++ trunk/dports/net/docsis/Portfile 2015-10-14 06:32:32 UTC (rev 141278)
@@ -0,0 +1,36 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem 1.0
+PortGroup github 1.0
+
+github.setup rlaager docsis 0.9.6 upstream/
+categories net
+platforms darwin
+maintainers ryandesign openmaintainer
+license GPL-2+
+
+description generates binary configuration files for DOCSIS-compliant cable modems
+
+long_description This program encodes text configuration files which contain Configuration \
+ File Settings into binary configuration files, as specified by the DOCSIS \
+ Radio Frequency Interface Specification, Appendix C. \
+ It supports most DOCSIS 2.0 Configuration Settings.
+
+checksums rmd160 6fde2a520120a5aa9867101ed044a05c57566801 \
+ sha256 7f75fb1332b1e788ed111f64b65a702df5f23b280d0f2622c6321d6a4d2dad50
+
+depends_build port:autoconf \
+ port:automake \
+ port:bison \
+ port:flex \
+ path:bin/glib-gettextize:glib2 \
+ port:libtool
+
+depends_lib path:lib/libssl.dylib:openssl \
+ port:net-snmp
+
+patchfiles net-snmp-5.4.patch \
+ prog_name.patch
+
+configure.cmd ./autogen.sh
Property changes on: trunk/dports/net/docsis/Portfile
___________________________________________________________________
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: trunk/dports/net/docsis/files/net-snmp-5.4.patch
===================================================================
--- trunk/dports/net/docsis/files/net-snmp-5.4.patch (rev 0)
+++ trunk/dports/net/docsis/files/net-snmp-5.4.patch 2015-10-14 06:32:32 UTC (rev 141278)
@@ -0,0 +1,15 @@
+Fix build with net-snmp 5.4
+http://docsis.org/node/1334
+https://sourceforge.net/p/docsis/bugs/17/
+https://github.com/rlaager/docsis/commit/ed9180b94919ee9f3cceeccc8a4bf538a0ad10b5
+--- src/docsis.c.orig 2010-06-14 14:24:40.000000000 -0500
++++ src/docsis.c 2015-10-14 00:48:44.000000000 -0500
+@@ -401,7 +401,7 @@
+ #endif /* DEBUG */
+
+ setenv ("MIBS", "ALL", 1);
+- init_mib ();
++ netsnmp_init_mib ();
+ if (!netsnmp_ds_get_boolean
+ (NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_PRINT_NUMERIC_OIDS))
+ {
Added: trunk/dports/net/docsis/files/prog_name.patch
===================================================================
--- trunk/dports/net/docsis/files/prog_name.patch (rev 0)
+++ trunk/dports/net/docsis/files/prog_name.patch 2015-10-14 06:32:32 UTC (rev 141278)
@@ -0,0 +1,200 @@
+Remove prog_name, which was causing a duplicate symbol compile failure
+https://sourceforge.net/p/docsis/bugs/14/
+https://github.com/rlaager/docsis/commit/1c0abdfc8536165d1e91791a4cae38dcbf66b3d5
+--- src/docsis.c.orig
++++ src/docsis.c
+@@ -113,7 +113,7 @@ add_cmts_mic (unsigned char *tlvbuf, unsigned int tlvbuflen,
+ else
+ {
+ if ( cp[0] == 64 ) {
+- printf("%s: warning: TLV64 (length > 255) not allowed in DOCSIS config files\n", prog_name);
++ printf("docsis: warning: TLV64 (length > 255) not allowed in DOCSIS config files\n");
+ cp = cp + (size_t) ntohs(*((unsigned short *)(cp+1))) + 3;
+ } else {
+ cp = cp + cp[1] + 2;
+@@ -134,11 +134,11 @@ add_cmts_mic (unsigned char *tlvbuf, unsigned int tlvbuflen,
+ }
+
+ #ifdef __GNUC__
+-static void usage (char *prog_name) __attribute__((__noreturn__));
++static void usage () __attribute__((__noreturn__));
+ #endif
+
+ static void
+-usage (char *prog_name)
++usage ()
+ {
+ printf ("DOCSIS Configuration File creator, version %s\n", VERSION);
+ printf
+@@ -147,19 +147,14 @@ usage (char *prog_name)
+ ("Copyright (c) 2002,2003,2004,2005 Evvolve Media SRL, docsis at evvolve.com \n\n");
+
+ printf
+- ("To encode a cable modem configuration file: \n\t %s -e <modem_cfg_file> <key_file> <output_file>\n",
+- prog_name);
++ ("To encode a cable modem configuration file: \n\t docsis -e <modem_cfg_file> <key_file> <output_file>\n");
+ printf
+- ("To encode multiple cable modem configuration files: \n\t %s -m <modem_cfg_file1> ... <key_file> <new_extension>\n",
+- prog_name);
++ ("To encode multiple cable modem configuration files: \n\t docsis -m <modem_cfg_file1> ... <key_file> <new_extension>\n");
+ printf
+- ("To encode a MTA configuration file: \n\t %s -p <mta_cfg_file> <output_file>\n",
+- prog_name);
++ ("To encode a MTA configuration file: \n\t docsis -p <mta_cfg_file> <output_file>\n");
+ printf
+- ("To encode multiple MTA configuration files: \n\t %s -m -p <mta_file1> ... <new_extension>\n",
+- prog_name);
+- printf ("To decode a CM or MTA config file: \n\t %s -d <binary_file>\n",
+- prog_name);
++ ("To encode multiple MTA configuration files: \n\t docsis -m -p <mta_file1> ... <new_extension>\n");
++ printf ("To decode a CM or MTA config file: \n\t docsis -d <binary_file>\n");
+ printf
+ ("\nWhere:\n<cfg_file>\t\t= name of text (human readable) cable modem or MTA \n\t\t\t configuration file\n<key_file>\t\t= text file containing the authentication key \n\t\t\t (shared secret) to be used for the CMTS MIC\n<output_file> \t\t= name of output file where the binary data will\n\t\t\t be written to (if it does not exist it is created).\n<binary_file>\t\t= name of binary file to be decoded\n<new_extension>\t\t= new extension to be used when encoding multiple files\n");
+ printf ("\nSee examples/*.cfg for configuration file format.\n");
+@@ -179,17 +174,14 @@ main (int argc, char *argv[])
+ unsigned int encode_docsis = FALSE, decode_bin = FALSE;
+ int i;
+
+- memset (prog_name, 0, 255);
+- strncpy (prog_name, argv[0], 254);
+-
+ if (argc < 2 ) {
+- usage(prog_name);
++ usage();
+ exit (10);
+ }
+
+ if (!strcmp (argv[1], "-m") ){ /* variable number of args, encoding multiple files */
+ if (argc < 5 ) {
+- usage(prog_name);
++ usage();
+ exit (10);
+ }
+ extension_string = argv[argc-1];
+@@ -204,21 +196,21 @@ main (int argc, char *argv[])
+ {
+ case 3:
+ if (strcmp (argv[1], "-d"))
+- usage (prog_name);
++ usage ();
+ decode_bin = TRUE;
+ config_file = argv[2];
+ break;
+ ;;
+ case 4:
+ if (strcmp (argv[1], "-p"))
+- usage (prog_name);
++ usage ();
+ config_file = argv[2];
+ output_file = argv[3];
+ break;
+ ;;
+ case 5:
+ if (strcmp (argv[1], "-e"))
+- usage (prog_name);
++ usage ();
+ encode_docsis = TRUE;
+ config_file = argv[2];
+ key_file = argv[3];
+@@ -226,7 +218,7 @@ main (int argc, char *argv[])
+ break;
+ ;;
+ default:
+- usage (prog_name);
++ usage ();
+ exit (10);
+ }
+ }
+@@ -235,7 +227,7 @@ main (int argc, char *argv[])
+ {
+ if ((kf = fopen (key_file, "r")) == NULL)
+ {
+- printf ("%s: error: can't open keyfile %s\n", prog_name, key_file);
++ printf ("docsis: error: can't open keyfile %s\n", key_file);
+ exit (-5);
+ }
+ keylen = fread (key, sizeof (unsigned char), 64, kf);
+@@ -307,7 +299,7 @@ int encode_one_file ( char *input_file, char *output_file,
+
+ if (!strcmp (input_file, output_file))
+ {
+- printf ("%s: Error: source file is the same as destination file\n", prog_name);
++ printf ("docsis: Error: source file is the same as destination file\n");
+ return -1;
+ }
+
+@@ -350,7 +342,7 @@ int encode_one_file ( char *input_file, char *output_file,
+ decode_main_aggregate (buffer, buflen);
+ if ((of = fopen (output_file, "wb")) == NULL)
+ {
+- printf ("%s: error: can't open output file %s\n", prog_name, output_file);
++ printf ("docsis: error: can't open output file %s\n", output_file);
+ return -2;
+ }
+ fwrite (buffer, sizeof (unsigned char), buflen, of);
+--- src/docsis_encode.c.orig
++++ src/docsis_encode.c
+@@ -33,7 +33,6 @@
+ #include <math.h>
+
+ #include "docsis_common.h"
+-#include "docsis_globals.h"
+ #include "docsis_encode.h"
+ #include "docsis_snmp.h"
+ #include "ethermac.h"
+@@ -57,7 +56,7 @@ int encode_uint ( unsigned char *buf, void *tval, struct symbol_entry *sym_ptr )
+ helper = (union t_val *) tval;
+ if ( sym_ptr->low_limit || sym_ptr->high_limit ) {
+ if ( helper->uintval < sym_ptr->low_limit || helper->uintval > sym_ptr->high_limit ) {
+- printf ("%s: at line %d, %s value %d out of range %hd-%hd\n ", prog_name,line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
++ printf ("docsis: at line %d, %s value %d out of range %hd-%hd\n ", line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
+ exit(-15);
+ }
+ }
+@@ -86,7 +85,7 @@ int encode_ushort ( unsigned char *buf, void *tval, struct symbol_entry *sym_ptr
+ helper = (union t_val *) tval;
+ if ( sym_ptr->low_limit || sym_ptr->high_limit ) {
+ if ( helper->uintval < sym_ptr->low_limit || helper->uintval > sym_ptr->high_limit ) {
+- printf ("%s: at line %d, %s value %d out of range %hd-%hd\n ", prog_name,line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
++ printf ("docsis: at line %d, %s value %d out of range %hd-%hd\n ", line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
+ exit(-15);
+ }
+ }
+@@ -118,7 +117,7 @@ int encode_uchar ( unsigned char *buf, void *tval, struct symbol_entry *sym_ptr
+
+ if ( sym_ptr->low_limit || sym_ptr->high_limit ) {
+ if ( helper->uintval < sym_ptr->low_limit || helper->uintval > sym_ptr->high_limit ) {
+- printf ("%s: at line %d, %s value %d out of range %hd-%hd\n ", prog_name,line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
++ printf ("docsis: at line %d, %s value %d out of range %hd-%hd\n ", line,sym_ptr->sym_ident,helper->uintval,sym_ptr->low_limit, sym_ptr->high_limit);
+ exit(-15);
+ }
+ }
+--- src/docsis_globals.h.orig
++++ src/docsis_globals.h
+@@ -23,7 +23,6 @@
+ #ifndef _DOCSIS_GLOBALS_H
+ #define _DOCSIS_GLOBALS_H
+
+-char prog_name[255];
+ struct tlv *global_tlvtree_head;
+ symbol_type *global_symtable;
+
+--- src/docsis_yy.y.orig
++++ src/docsis_yy.y
+@@ -37,7 +37,6 @@ extern unsigned int line; /* current line number, defined in a.l */
+ extern struct tlv *global_tlvtree_head; /* Global list of all config TLVs */
+ extern symbol_type *global_symtable;
+ extern FILE *yyin;
+-extern char prog_name[255];
+
+ struct tlv *_my_tlvtree_head;
+
+@@ -620,7 +619,7 @@ int parse_config_file ( char *file, struct tlv **parse_tree_result )
+
+ if ( (cf = fopen ( file, "r" ))== NULL )
+ {
+- printf ("%s: Can't open input file %s\n", prog_name, file );
++ printf ("docsis: Can't open input file %s\n", file );
+ return -1;
+ }
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20151013/85808892/attachment.html>
More information about the macports-changes
mailing list