aboutsummaryrefslogtreecommitdiffstats
path: root/net-mgmt/bgpq
diff options
context:
space:
mode:
authorsem <sem@FreeBSD.org>2009-10-20 00:01:17 +0800
committersem <sem@FreeBSD.org>2009-10-20 00:01:17 +0800
commitc518e8ac9a40378d1b9baf56f56e25c3de848da9 (patch)
tree068b1c361a8a1ad8f6a05df06cc7ea42c5797885 /net-mgmt/bgpq
parent937f9263b30b7d0e107cf671ad92eb0cdac21067 (diff)
downloadfreebsd-ports-gnome-c518e8ac9a40378d1b9baf56f56e25c3de848da9.tar.gz
freebsd-ports-gnome-c518e8ac9a40378d1b9baf56f56e25c3de848da9.tar.zst
freebsd-ports-gnome-c518e8ac9a40378d1b9baf56f56e25c3de848da9.zip
- Add a patch to fix working with really big AS-sets (like AS-DECIX). And
some optimizations too.
Diffstat (limited to 'net-mgmt/bgpq')
-rw-r--r--net-mgmt/bgpq/Makefile1
-rw-r--r--net-mgmt/bgpq/files/patch-bgpq73
2 files changed, 74 insertions, 0 deletions
diff --git a/net-mgmt/bgpq/Makefile b/net-mgmt/bgpq/Makefile
index 59846ce73733..c405ef73a9ab 100644
--- a/net-mgmt/bgpq/Makefile
+++ b/net-mgmt/bgpq/Makefile
@@ -6,6 +6,7 @@
PORTNAME= bgpq
PORTVERSION= 1.0.9.7
+PORTREVISION= 1
CATEGORIES= net-mgmt
MASTER_SITES= ftp://ftp.lexa.ru/pub/domestic/snar/
EXTRACT_SUFX= .tgz
diff --git a/net-mgmt/bgpq/files/patch-bgpq b/net-mgmt/bgpq/files/patch-bgpq
new file mode 100644
index 000000000000..67bddc8fb0e1
--- /dev/null
+++ b/net-mgmt/bgpq/files/patch-bgpq
@@ -0,0 +1,73 @@
+--- bgpq.c.orig 2006-04-08 04:45:19.000000000 +0400
++++ bgpq.c 2009-10-19 19:37:28.000000000 +0400
+@@ -39,7 +39,7 @@
+ /* from unistd.h on *BSD */
+ extern int optreset;
+
+-int debug, allroutes, quiet, noheader, no_expand_as=0, no_finish_in_main=0;
++int debug, allroutes, quiet, noheader, no_expand_as=0, no_finish_in_main=0, show_bad=0;
+ int Quiet=0, invertLogic=0, addLog=0;
+
+ char commandstring[2048];
+@@ -48,10 +48,11 @@
+ int
+ usage()
+ {
+- printf("Usage: bgpq [-l name] [-h host] [-p port] [-d] [-Pijosge]|[-f number]|[-F format]|[-G number] [-aq] [-S src] [-H] [-c] [-R masklen] objects [EXCEPT objects]\n");
++ printf("Usage: bgpq [-l name] [-h host] [-p port] [-d] [-Pijosge]|[-f number]|[-F format]|[-G number] [-aq] [-S src] [-H] [-c] [-R masklen] [-b] objects [EXCEPT objects]\n");
+ printf("\tbgpq -r filename\n");
+ printf("\t-A - try to aggregate routes\n");
+ printf("\t-a - print all routes uncommented\n");
++ printf("\t-b - show unresolved ASes\n");
+ printf("\t-c - include commandline in output\n");
+ printf("\t-d - debugging\n");
+ printf("\t-e - generate standard access-list\n");
+@@ -159,11 +160,14 @@
+ strncat(commandstring," ",sizeof(commandstring)-1);
+ };
+
+- while((c=getopt(argc,argv,"Aaqh:p:l:dPiIosgG:S:eNHcf:F:O:R:r:jJQL"))!=EOF){
++ while((c=getopt(argc,argv,"Aabqh:p:l:dPiIosgG:S:eNHcf:F:O:R:r:jJQL"))!=EOF){
+ switch(c) {
+ case 'A':
+ do_aggregate=1;
+ break;
++ case 'b':
++ show_bad=1;
++ break;
+ case 'l':
+ listname=optarg;
+ if(!check_is_word(listname)) {
+@@ -401,12 +405,30 @@
+
+ if(!expand(ro,host,port,excp,source)) exit(1);
+
+- if(refine)
++ if(refine) {
++ if(!quiet)
++ fprintf(stderr, "Refining...");
++
+ ro_refinery(ro,refine);
+
+- if(do_aggregate)
++ if(!quiet)
++ fprintf(stderr, " done\n");
++ }
++
++
++ if(do_aggregate) {
++ if(!quiet)
++ fprintf(stderr, "Aggregating...");
++
+ ro_aggregate(&ro,mode);
+
++ if(!quiet)
++ fprintf(stderr, " done\n");
++ }
++
++ if(!quiet)
++ fprintf(stderr, "Output results...\n");
++
+ if(!outfile) outfile=stdout;
+
+ if(debug>3)