diff options
author | spz <spz> | 2007-05-22 12:17:30 +0000 |
---|---|---|
committer | spz <spz> | 2007-05-22 12:17:30 +0000 |
commit | c5b3cf33a7c02f220b7de02bc2ab38268020de14 (patch) | |
tree | dde3c2ac79916275eeb6a70d6e731f703d71d3ab /net/irrtoolset-nox11 | |
parent | 2f4b0d25ce011d745384757ed0138357172b78ba (diff) | |
download | pkgsrc-c5b3cf33a7c02f220b7de02bc2ab38268020de14.tar.gz |
new version, new patches: upstream adopted a bunch of ours, but gcc found
new things to bitch about
Diffstat (limited to 'net/irrtoolset-nox11')
43 files changed, 111 insertions, 2836 deletions
diff --git a/net/irrtoolset-nox11/patches/patch-aa b/net/irrtoolset-nox11/patches/patch-aa deleted file mode 100644 index d99e7aed9a0..00000000000 --- a/net/irrtoolset-nox11/patches/patch-aa +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-aa,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/config.h.in.orig 2002-04-09 13:48:44.000000000 +0200 -+++ src/config.h.in -@@ -224,4 +224,11 @@ - #include <typeinfo> - #endif /* __cplusplus */ - -+#ifndef __P -+# if defined __cplusplus || defined __STDC__ -+# define __P(args) args -+# else -+# define __P(args) () -+# endif -+#endif - #endif /* CONFIG_H */ - diff --git a/net/irrtoolset-nox11/patches/patch-ab b/net/irrtoolset-nox11/patches/patch-ab deleted file mode 100644 index 4ee0630b5fa..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ab +++ /dev/null @@ -1,37 +0,0 @@ -$NetBSD: patch-ab,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/ACG.h.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/ACG.h -@@ -42,26 +42,26 @@ Foundation, 59 Temple Place - Suite 330, - - class ACG : public RNG { - -- _G_uint32_t initialSeed; // used to reset generator -+ uint32_t initialSeed; // used to reset generator - int initialTableEntry; - -- _G_uint32_t *state; -- _G_uint32_t *auxState; -+ uint32_t *state; -+ uint32_t *auxState; - short stateSize; - short auxSize; -- _G_uint32_t lcgRecurr; -+ uint32_t lcgRecurr; - short j; - short k; - - protected: - - public: -- ACG(_G_uint32_t seed = 0, int size = 55); -+ ACG(uint32_t seed = 0, int size = 55); - virtual ~ACG(); - // - // Return a long-words word of random bits - // -- virtual _G_uint32_t asLong(); -+ virtual uint32_t asLong(); - virtual void reset(); - }; - diff --git a/net/irrtoolset-nox11/patches/patch-ac b/net/irrtoolset-nox11/patches/patch-ac deleted file mode 100644 index d1611ff1f30..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ac +++ /dev/null @@ -1,76 +0,0 @@ -$NetBSD: patch-ac,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/MLCG.h.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/MLCG.h -@@ -29,55 +29,55 @@ Foundation, 59 Temple Place - Suite 330, - // - - class MLCG : public RNG { -- _G_int32_t initialSeedOne; -- _G_int32_t initialSeedTwo; -- _G_int32_t seedOne; -- _G_int32_t seedTwo; -+ int32_t initialSeedOne; -+ int32_t initialSeedTwo; -+ int32_t seedOne; -+ int32_t seedTwo; - - protected: - - public: -- MLCG(_G_int32_t seed1 = 0, _G_int32_t seed2 = 1); -+ MLCG(int32_t seed1 = 0, int32_t seed2 = 1); - // - // Return a long-words word of random bits - // -- virtual _G_uint32_t asLong(); -+ virtual uint32_t asLong(); - virtual void reset(); -- _G_int32_t seed1(); -- void seed1(_G_int32_t); -- _G_int32_t seed2(); -- void seed2(_G_int32_t); -- void reseed(_G_int32_t, _G_int32_t); -+ int32_t seed1(); -+ void seed1(int32_t); -+ int32_t seed2(); -+ void seed2(int32_t); -+ void reseed(int32_t, int32_t); - }; - --inline _G_int32_t -+inline int32_t - MLCG::seed1() - { - return(seedOne); - } - - inline void --MLCG::seed1(_G_int32_t s) -+MLCG::seed1(int32_t s) - { - initialSeedOne = s; - reset(); - } - --inline _G_int32_t -+inline int32_t - MLCG::seed2() - { - return(seedTwo); - } - - inline void --MLCG::seed2(_G_int32_t s) -+MLCG::seed2(int32_t s) - { - initialSeedTwo = s; - reset(); - } - - inline void --MLCG::reseed(_G_int32_t s1, _G_int32_t s2) -+MLCG::reseed(int32_t s1, int32_t s2) - { - initialSeedOne = s1; - initialSeedTwo = s2; diff --git a/net/irrtoolset-nox11/patches/patch-ad b/net/irrtoolset-nox11/patches/patch-ad deleted file mode 100644 index 8362e3de4bc..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ad +++ /dev/null @@ -1,36 +0,0 @@ -$NetBSD: patch-ad,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/RNG.h.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/RNG.h -@@ -21,18 +21,19 @@ Foundation, 59 Temple Place - Suite 330, - #pragma interface - #endif - -+#include <sys/types.h> - #include <assert.h> - #include <math.h> --#include <_G_config.h> -+#include <config.h> - - union PrivateRNGSingleType { // used to access floats as unsigneds - float s; -- _G_uint32_t u; -+ uint32_t u; - }; - - union PrivateRNGDoubleType { // used to access doubles as unsigneds - double d; -- _G_uint32_t u[2]; -+ uint32_t u[2]; - }; - - // -@@ -46,7 +47,7 @@ public: - // - // Return a long-words word of random bits - // -- virtual _G_uint32_t asLong() = 0; -+ virtual uint32_t asLong() = 0; - virtual void reset() = 0; - // - // Return random bits converted to either a float or a double diff --git a/net/irrtoolset-nox11/patches/patch-ae b/net/irrtoolset-nox11/patches/patch-ae deleted file mode 100644 index c84aaf43e70..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ae +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-ae,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/std.h.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/std.h -@@ -19,7 +19,7 @@ Foundation, 59 Temple Place - Suite 330, - #ifndef _std_h - #define _std_h 1 - --#include <_G_config.h> -+#include <config.h> - #include <cstddef> - #include <cstdlib> - #include <cstring> -@@ -31,7 +31,7 @@ Foundation, 59 Temple Place - Suite 330, - - extern "C" { - #ifndef HAVE_STRINGS_H --int strcasecmp _G_ARGS((const char*, const char*)); -+int strcasecmp __P((const char*, const char*)); - #endif // HAVE_STRINGS_H - } - diff --git a/net/irrtoolset-nox11/patches/patch-af b/net/irrtoolset-nox11/patches/patch-af deleted file mode 100644 index 6f2aec68752..00000000000 --- a/net/irrtoolset-nox11/patches/patch-af +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-af,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/rpsl/gnu/std.h.orig 2002-03-27 12:33:00.000000000 +0100 -+++ src/rpsl/gnu/std.h -@@ -19,7 +19,7 @@ Foundation, 59 Temple Place - Suite 330, - #ifndef _std_h - #define _std_h 1 - --#include <_G_config.h> -+#include <config.h> - #include <cstddef> - #include <cstdlib> - #include <cstring> -@@ -28,8 +28,10 @@ Foundation, 59 Temple Place - Suite 330, - #include <cerrno> - #include <fcntl.h> - -+#ifndef HAVE_STRINGS_H - extern "C" { --int strcasecmp _G_ARGS((const char*, const char*)); -+int strcasecmp __P((const char*, const char*)); - } -+#endif // HAVE_STRINGS_H - - #endif diff --git a/net/irrtoolset-nox11/patches/patch-ag b/net/irrtoolset-nox11/patches/patch-ag deleted file mode 100644 index 600529927dc..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ag +++ /dev/null @@ -1,98 +0,0 @@ -$NetBSD: patch-ag,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/ACG.cc.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/ACG.cc -@@ -123,7 +123,7 @@ static int randomStateTable[][3] = { - // - - #define RANDOM_PERM_SIZE 64 --_G_uint32_t randomPermutations[RANDOM_PERM_SIZE] = { -+uint32_t randomPermutations[RANDOM_PERM_SIZE] = { - 0xffffffff, 0x00000000, 0x00000000, 0x00000000, // 3210 - 0x0000ffff, 0x00ff0000, 0x00000000, 0xff000000, // 2310 - 0xff0000ff, 0x0000ff00, 0x00000000, 0x00ff0000, // 3120 -@@ -149,7 +149,7 @@ _G_uint32_t randomPermutations[RANDOM_PE - // SEED_TABLE_SIZE must be a power of 2 - // - #define SEED_TABLE_SIZE 32 --static _G_uint32_t seedTable[SEED_TABLE_SIZE] = { -+static uint32_t seedTable[SEED_TABLE_SIZE] = { - 0xbdcc47e5, 0x54aea45d, 0xec0df859, 0xda84637b, - 0xc8c6cb4f, 0x35574b01, 0x28260b7d, 0x0d07fdbf, - 0x9faaeeb0, 0x613dd169, 0x5ce2d818, 0x85b9e706, -@@ -171,15 +171,15 @@ static _G_uint32_t seedTable[SEED_TABLE_ - // LC_C = result of a long trial & error series = 3907864577 - // - --static const _G_uint32_t LC_A = 66049; --static const _G_uint32_t LC_C = 3907864577u; --static inline _G_uint32_t LCG(_G_uint32_t x) -+static const uint32_t LC_A = 66049; -+static const uint32_t LC_C = 3907864577u; -+static inline uint32_t LCG(uint32_t x) - { - return( x * LC_A + LC_C ); - } - - --ACG::ACG(_G_uint32_t seed, int size) -+ACG::ACG(uint32_t seed, int size) - { - register int l; - initialSeed = seed; -@@ -205,7 +205,7 @@ ACG::ACG(_G_uint32_t seed, int size) - // Allocate the state table & the auxillary table in a single malloc - // - -- state = new _G_uint32_t[stateSize + auxSize]; -+ state = new uint32_t[stateSize + auxSize]; - auxState = &state[stateSize]; - - reset(); -@@ -217,7 +217,7 @@ ACG::ACG(_G_uint32_t seed, int size) - void - ACG::reset() - { -- register _G_uint32_t u; -+ register uint32_t u; - - if (initialSeed < SEED_TABLE_SIZE) { - u = seedTable[ initialSeed ]; -@@ -247,7 +247,7 @@ ACG::reset() - - lcgRecurr = u; - -- assert(sizeof(double) == 2 * sizeof(_G_int32_t)); -+ assert(sizeof(double) == 2 * sizeof(int32_t)); - } - - ACG::~ACG() -@@ -261,16 +261,16 @@ ACG::~ACG() - // Returns 32 bits of random information. - // - --_G_uint32_t -+uint32_t - ACG::asLong() - { -- _G_uint32_t result = state[k] + state[j]; -+ uint32_t result = state[k] + state[j]; - state[k] = result; - j = (j <= 0) ? (stateSize-1) : (j-1); - k = (k <= 0) ? (stateSize-1) : (k-1); - - short int auxIndex = (result >> 24) & (auxSize - 1); -- register _G_uint32_t auxACG = auxState[auxIndex]; -+ register uint32_t auxACG = auxState[auxIndex]; - auxState[auxIndex] = lcgRecurr = LCG(lcgRecurr); - - // -@@ -278,7 +278,7 @@ ACG::asLong() - // do not want to run off the end of the permutation table. - // This insures that we have always got four entries left. - // -- register _G_uint32_t *perm = & randomPermutations[result & 0x3c]; -+ register uint32_t *perm = & randomPermutations[result & 0x3c]; - - result = *(perm++) & auxACG; - result |= *(perm++) & ((auxACG << 24) diff --git a/net/irrtoolset-nox11/patches/patch-ah b/net/irrtoolset-nox11/patches/patch-ah deleted file mode 100644 index 45192376059..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ah +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-ah,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/gnug++/std.h.orig 2002-03-27 12:32:57.000000000 +0100 -+++ src/gnug++/std.h -@@ -19,7 +19,7 @@ Foundation, 59 Temple Place - Suite 330, - #ifndef _std_h - #define _std_h 1 - --#include <_G_config.h> -+#include <config.h> - #include <cstddef> - #include <cstdlib> - #include <cstring> -@@ -28,8 +28,10 @@ Foundation, 59 Temple Place - Suite 330, - #include <cerrno> - #include <fcntl.h> - -+#ifndef HAVE_STRINGS_H - extern "C" { --int strcasecmp _G_ARGS((const char*, const char*)); -+int strcasecmp __P((const char*, const char*)); - } -+#endif - - #endif diff --git a/net/irrtoolset-nox11/patches/patch-ai b/net/irrtoolset-nox11/patches/patch-ai deleted file mode 100644 index 38eb54880dd..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ai +++ /dev/null @@ -1,54 +0,0 @@ -$NetBSD: patch-ai,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/MLCG.cc.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/MLCG.cc -@@ -25,7 +25,7 @@ Foundation, 59 Temple Place - Suite 330, - - #define SEED_TABLE_SIZE 32 - --static _G_int32_t seedTable[SEED_TABLE_SIZE] = { -+static int32_t seedTable[SEED_TABLE_SIZE] = { - 0xbdcc47e5, 0x54aea45d, 0xec0df859, 0xda84637b, - 0xc8c6cb4f, 0x35574b01, 0x28260b7d, 0x0d07fdbf, - 0x9faaeeb0, 0x613dd169, 0x5ce2d818, 0x85b9e706, -@@ -36,7 +36,7 @@ static _G_int32_t seedTable[SEED_TABLE_S - 0xb89cff2b, 0x12164de1, 0xa865168d, 0x32b56cdf - }; - --MLCG::MLCG(_G_int32_t seed1, _G_int32_t seed2) -+MLCG::MLCG(int32_t seed1, int32_t seed2) - { - initialSeedOne = seed1; - initialSeedTwo = seed2; -@@ -46,8 +46,8 @@ MLCG::MLCG(_G_int32_t seed1, _G_int32_t - void - MLCG::reset() - { -- _G_int32_t seed1 = initialSeedOne; -- _G_int32_t seed2 = initialSeedTwo; -+ int32_t seed1 = initialSeedOne; -+ int32_t seed2 = initialSeedTwo; - - // - // Most people pick stupid seed numbers that do not have enough -@@ -79,9 +79,9 @@ MLCG::reset() - seedTwo = (seedTwo % 2147483397) + 1; - } - --_G_uint32_t MLCG::asLong() -+uint32_t MLCG::asLong() - { -- _G_int32_t k = seedOne % 53668; -+ int32_t k = seedOne % 53668; - - seedOne = 40014 * (seedOne-k * 53668) - k * 12211; - if (seedOne < 0) { -@@ -94,7 +94,7 @@ _G_uint32_t MLCG::asLong() - seedTwo += 2147483399; - } - -- _G_int32_t z = seedOne - seedTwo; -+ int32_t z = seedOne - seedTwo; - if (z < 1) { - z += 2147483562; - } diff --git a/net/irrtoolset-nox11/patches/patch-aj b/net/irrtoolset-nox11/patches/patch-aj deleted file mode 100644 index 84c43d02d5d..00000000000 --- a/net/irrtoolset-nox11/patches/patch-aj +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-aj,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/Core/gnu/RNG.cc.orig 2002-03-27 12:32:59.000000000 +0100 -+++ src/Core/gnu/RNG.cc -@@ -40,7 +40,7 @@ RNG::RNG() - if (!initialized) - { - -- assert (sizeof(double) == 2 * sizeof(_G_uint32_t)); -+ assert (sizeof(double) == 2 * sizeof(uint32_t)); - - // - // The following is a hack that I attribute to diff --git a/net/irrtoolset-nox11/patches/patch-ak b/net/irrtoolset-nox11/patches/patch-ak deleted file mode 100644 index 458e2007417..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ak +++ /dev/null @@ -1,201 +0,0 @@ -$NetBSD: patch-ak,v 1.2 2005/08/26 08:41:46 spz Exp $ - ---- src/Core/util/List.hh.orig 2004-07-30 12:58:10.000000000 +0200 -+++ src/Core/util/List.hh -@@ -164,7 +164,7 @@ public: - ListIterator (const const_ListIterator<T>& cit) : const_ListIterator<T>(cit.list_, cit.ptr_) {} - ListIterator (const List<T> &l, ListNode *p=0) : const_ListIterator<T>(l, p?p:l.forw) {} - -- operator T* () const { return (ptr_==(ListNode*)list_) ? 0 : (T*)ptr_; } -+ operator T* () const { return (const_ListIterator<T>::ptr_==(ListNode*)const_ListIterator<T>::list_) ? 0 : (T*)const_ListIterator<T>::ptr_; } - T* operator-> () const { return (T*)const_ListIterator<T>::operator->(); } - ListIterator& operator++ () { // prefix ++ - const_ListIterator<T>::operator++(); -@@ -185,17 +185,17 @@ public: - - const_ListSearchIterator& operator++ () { // prefix ++ - for (const_ListIterator<T>::operator++(); -- ptr_!=(ListNode*)list_; -+ const_ListIterator<T>::ptr_!=(ListNode*)const_ListIterator<T>::list_; - const_ListIterator<T>::operator++()) { -- if (((T*)ptr_)->isKey(key_)) break; -+ if (((T*)const_ListIterator<T>::ptr_)->isKey(key_)) break; - } - return *this; - } - const_ListSearchIterator& operator-- () { // prefix -- - for (const_ListIterator<T>::operator--(); -- ptr_!=(ListNode*)list_; -+ const_ListIterator<T>::ptr_!=(ListNode*)const_ListIterator<T>::list_; - const_ListIterator<T>::operator--()) { -- if (((T*)ptr_)->isKey(key_)) break; -+ if (((T*)const_ListIterator<T>::ptr_)->isKey(key_)) break; - } - return *this; - } -@@ -212,7 +212,7 @@ public: - : const_ListSearchIterator<T, Key>(k, l, p?p:(ListNode*)&l) {} - - -- operator T* () const { return (ptr_==(ListNode*)list_) ? 0 : (T*)ptr_; } -+ operator T* () const { return (const_ListIterator<T>::ptr_==(ListNode*)const_ListIterator<T>::list_) ? 0 : (T*)const_ListIterator<T>::ptr_; } - T* operator-> () const { return (T*)const_ListIterator<T>::operator->(); } - ListSearchIterator& operator++ () { // prefix ++ - const_ListSearchIterator<T,Key>::operator++(); -@@ -407,11 +407,11 @@ public: - * (A1 A2 A3) and (A4 B C), where A1==A2==A3==A4, - * will be equal. - */ -- if (length != b.length) -+ if (List<T>::length != b.length) - return false; - - ListNode *e, *e2; -- for (e = forw; e != (ListNode*)this; e = e->forw) { -+ for (e = List<T>::forw; e != (ListNode*)this; e = e->forw) { - for (e2 = b.forw; e2 != (const ListNode*) &b; e2 = e2->forw) - if (*(T*)e == *(T*)e2) - break; -@@ -451,31 +451,31 @@ public: - - void insertSorted(T *t) { - ListNode *e; -- for (e = forw; e != (ListNode*)this && (*(T*)e < *t); e = e->forw) -+ for (e = List<T>::forw; e != (ListNode*)this && (*(T*)e < *t); e = e->forw) - ; - - if (e != (ListNode*)this) - t->__link__(e->back, e); - else -- t->__link__(back, this); -+ t->__link__(List<T>::back, this); - -- length++; -+ List<T>::length++; - } - - bool insertSortedNoDups(T *t) { - ListNode *e; -- for (e = forw; e != (ListNode*)this && (*(T*)e < *t); e = e->forw) -+ for (e = List<T>::forw; e != (ListNode*)this && (*(T*)e < *t); e = e->forw) - ; - - if (e != (ListNode*)this) { - if (!(*(T*)e == *t)) { - t->__link__(e->back, e); -- length++; -+ List<T>::length++; - return true; - } - } else { -- t->__link__(back, this); -- length++; -+ t->__link__(List<T>::back, this); -+ List<T>::length++; - return true; - } - return false; -@@ -484,7 +484,7 @@ public: - // do a sorted merge - void splice(SortedList& l) { - ListNode *t; -- ListNode *e = forw; -+ ListNode *e = List<T>::forw; - while (!l.isEmpty()) { - t = l.forw; - t->__unlink__(); -@@ -495,16 +495,16 @@ public: - if (e != (ListNode*)this) - t->__link__(e->back, e); - else -- t->__link__(back, this); -+ t->__link__(List<T>::back, this); - } - -- length += l.length; -+ List<T>::length += l.length; - } - - // do a sorted merge - void splice(List<T>& l) { - ListNode *t; -- ListNode *e = forw; -+ ListNode *e = List<T>::forw; - while (!l.isEmpty()) { - t = l.forw; - t->__unlink__(); -@@ -514,7 +514,7 @@ public: - // sorted merge no dups - void spliceNoDups(SortedList& l) { - ListNode *t; -- ListNode *e = forw; -+ ListNode *e = List<T>::forw; - while (!l.isEmpty()) { - t = l.forw; - t->__unlink__(); -@@ -527,16 +527,16 @@ public: - t->__link__(e->back, e); - } - else -- t->__link__(back, this); -+ t->__link__(List<T>::back, this); - } - -- length += l.length; -+ List<T>::length += l.length; - } - - - - T* find(const T &t) const { -- for (ListNode *e = forw; e != (const ListNode*)this; e = e->forw) -+ for (ListNode *e = List<T>::forw; e != (const ListNode*)this; e = e->forw) - if (*(T*)e == t) - return (T*)e; - else if (!(*(T*)e < t)) -@@ -572,37 +572,37 @@ public: - } - - WRRListIterator& operator++ () { // prefix ++ -- ListNode *position = ptr_; -+ ListNode *position = ListIterator<T>::ptr_; - - for (ListIterator<T>::operator++ (); - *this; - ListIterator<T>::operator++ ()) -- if ((*uniform_)() < ((T *) ptr_)->weight()) -+ if ((*uniform_)() < ((T *) ListIterator<T>::ptr_)->weight()) - return *this; - - // we do this twice to handle circular queue - for (ListIterator<T>::operator++ (); -- ptr_ != position; -+ ListIterator<T>::ptr_ != position; - ListIterator<T>::operator++ ()) -- if ((*uniform_)() < ((T *) ptr_)->weight()) -+ if ((*uniform_)() < ((T *) ListIterator<T>::ptr_)->weight()) - return *this; - return *this; - } - - WRRListIterator& operator-- () { // prefix -- -- ListNode *position = ptr_; -+ ListNode *position = ListIterator<T>::ptr_; - - for (ListIterator<T>::operator-- (); - *this; - ListIterator<T>::operator-- ()) -- if ((*uniform_)() < ((T *) ptr_)->weight()) -+ if ((*uniform_)() < ((T *) ListIterator<T>::ptr_)->weight()) - return *this; - - // we do this twice to handle circular queue - for (ListIterator<T>::operator-- (); -- ptr_ != position; -+ ListIterator<T>::ptr_ != position; - ListIterator<T>::operator-- ()) -- if ((*uniform_)() < ((T *) ptr_)->weight()) -+ if ((*uniform_)() < ((T *) ListIterator<T>::ptr_)->weight()) - return *this; - return *this; - } diff --git a/net/irrtoolset-nox11/patches/patch-al b/net/irrtoolset-nox11/patches/patch-al deleted file mode 100644 index 31ea4728d87..00000000000 --- a/net/irrtoolset-nox11/patches/patch-al +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-al,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/irr/autnum.hh.orig 2005-02-26 11:41:12.000000000 +0100 -+++ src/irr/autnum.hh -@@ -334,7 +334,7 @@ protected: - } - else - { -- cerr << "Internal Error!" << endl; -+ std::cerr << "Internal Error!" << std::endl; - abort(); - } - return false; -@@ -348,7 +348,7 @@ public: - peerAS(_peerAS) { - // Has to be called here again in order to get things right! - // It's not perfect but it works -- first(); -+ AttrIterator<AttrType>::first(); - } - }; - diff --git a/net/irrtoolset-nox11/patches/patch-am b/net/irrtoolset-nox11/patches/patch-am deleted file mode 100644 index 11bd378fae1..00000000000 --- a/net/irrtoolset-nox11/patches/patch-am +++ /dev/null @@ -1,95 +0,0 @@ -$NetBSD: patch-am,v 1.2 2005/03/06 11:40:21 spz Exp $ - ---- src/normalform/IPv6RadixSet.hh.orig 2004-07-30 12:58:12.000000000 +0200 -+++ src/normalform/IPv6RadixSet.hh -@@ -74,7 +74,12 @@ extern ip_v6word_t ipv6bits[]; - - class IPv6RadixTree { - public: -+#if (__GNUC__ > 2) -+ friend class Iterator; -+ class Iterator { -+#else - friend class Iterator { -+#endif - private: - const IPv6RadixTree* last; - const IPv6RadixTree* root; -@@ -152,7 +157,12 @@ class IPv6RadixSet { - public: - static bool compressedPrint; - -+#if (__GNUC__ > 2) -+ friend class Iterator; -+ class Iterator { -+#else - friend class Iterator { -+#endif - private: - IPv6RadixTree::Iterator itr; - const IPv6RadixTree *now; // points to current node during iteration -@@ -163,7 +173,12 @@ public: - bool next(ipv6_addr_t &_addr, u_int &_leng, ipv6_addr_t &rngs); - }; - -+#if (__GNUC__ > 2) -+ friend class SortedIterator; -+ class SortedIterator { -+#else - friend class SortedIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: -@@ -187,7 +202,12 @@ public: - bool next(ipv6_addr_t &_addr, u_int &_leng, ipv6_addr_t &_rngs); - }; - -+#if (__GNUC__ > 2) -+ friend class PrefixIterator; -+ class PrefixIterator { -+#else - friend class PrefixIterator { -+#endif - private: - IPv6RadixTree::Iterator itr; - const IPv6RadixTree *current; -@@ -204,7 +224,12 @@ public: - bool next(ipv6_addr_t &_addr, u_int &_leng); - }; - -+#if (__GNUC__ > 2) -+ friend class SortedPrefixIterator; -+ class SortedPrefixIterator { -+#else - friend class SortedPrefixIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: -@@ -227,7 +252,12 @@ public: - bool next(ipv6_addr_t &_addr, u_int &_leng); - }; - -+#if (__GNUC__ > 2) -+ friend class PrefixRangeIterator; -+ class PrefixRangeIterator { -+#else - friend class PrefixRangeIterator { -+#endif - private: - IPv6RadixTree::Iterator itr; - const IPv6RadixTree *current; -@@ -260,7 +290,12 @@ public: - */ - }; - -+#if (__GNUC__ > 2) -+ friend class SortedPrefixRangeIterator; -+ class SortedPrefixRangeIterator { -+#else - friend class SortedPrefixRangeIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: diff --git a/net/irrtoolset-nox11/patches/patch-an b/net/irrtoolset-nox11/patches/patch-an deleted file mode 100644 index 68655090b74..00000000000 --- a/net/irrtoolset-nox11/patches/patch-an +++ /dev/null @@ -1,95 +0,0 @@ -$NetBSD: patch-an,v 1.2 2005/03/06 11:40:21 spz Exp $ - ---- src/normalform/RadixSet.hh.orig 2004-07-30 12:58:13.000000000 +0200 -+++ src/normalform/RadixSet.hh -@@ -76,7 +76,12 @@ extern FixedSizeAllocator RadixTreeAlloc - - class RadixTree { - public: -+#if (__GNUC__ > 2) -+ friend class Iterator; -+ class Iterator { -+#else - friend class Iterator { -+#endif - private: - const RadixTree* last; - const RadixTree* root; -@@ -155,7 +160,12 @@ class RadixSet { - public: - static bool compressedPrint; - -+#if (__GNUC__ > 2) -+ friend class Iterator; -+ class Iterator { -+#else - friend class Iterator { -+#endif - private: - RadixTree::Iterator itr; - const RadixTree *now; // points to current node during iteration -@@ -166,7 +176,12 @@ public: - bool next(u_int &_addr, u_int &_leng, u_int64_t &rngs); - }; - -+#if (__GNUC__ > 2) -+ friend class SortedIterator; -+ class SortedIterator { -+#else - friend class SortedIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: -@@ -189,7 +204,12 @@ public: - bool next(u_int &_addr, u_int &_leng, u_int64_t &_rngs); - }; - -+#if (__GNUC__ > 2) -+ friend class PrefixIterator; -+ class PrefixIterator { -+#else - friend class PrefixIterator { -+#endif - private: - RadixTree::Iterator itr; - const RadixTree *current; -@@ -206,7 +226,12 @@ public: - bool next(u_int &_addr, u_int &_leng); - }; - -+#if (__GNUC__ > 2) -+ friend class SortedPrefixIterator; -+ class SortedPrefixIterator { -+#else - friend class SortedPrefixIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: -@@ -228,7 +253,12 @@ public: - bool next(u_int &_addr, u_int &_leng); - }; - -+#if (__GNUC__ > 2) -+ friend class PrefixRangeIterator; -+ class PrefixRangeIterator { -+#else - friend class PrefixRangeIterator { -+#endif - private: - RadixTree::Iterator itr; - const RadixTree *current; -@@ -259,7 +289,12 @@ public: - } - }; - -+#if (__GNUC__ > 2) -+ friend class SortedPrefixRangeIterator; -+ class SortedPrefixRangeIterator { -+#else - friend class SortedPrefixRangeIterator { -+#endif - private: - class PrefixLNode : public ListNode { - public: diff --git a/net/irrtoolset-nox11/patches/patch-ao b/net/irrtoolset-nox11/patches/patch-ao deleted file mode 100644 index 48a1fba5d04..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ao +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-ao,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/util/Stack.hh.orig 2005-02-26 11:50:00.000000000 +0100 -+++ src/util/Stack.hh -@@ -100,9 +100,9 @@ class BoundedStack : BoundedQueue<TYPE> - public: - BoundedStack(int size) : BoundedQueue<TYPE>(size) {} - void push(TYPE elt) { enq(elt); } -- TYPE pop() { return q[--last]; } -- int getPosition() { return last; } -- void setPosition(int pos) { last = pos; } -+ TYPE pop() { return BoundedQueue<TYPE>::q[--BoundedQueue<TYPE>::last]; } -+ int getPosition() { return BoundedQueue<TYPE>::last; } -+ void setPosition(int pos) { BoundedQueue<TYPE>::last = pos; } - void clear() { - BoundedQueue<TYPE>::clear(); - } diff --git a/net/irrtoolset-nox11/patches/patch-ap b/net/irrtoolset-nox11/patches/patch-ap deleted file mode 100644 index e4d938c7931..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ap +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-ap,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/normalform/NE.cc.orig 2004-07-30 12:58:12.000000000 +0200 -+++ src/normalform/NE.cc -@@ -355,7 +355,10 @@ NormalExpression *NormalExpression::eval - if (typeid(*ptree) == typeid(FilterAFI)) { - - ne = evaluate(((FilterAFI *) ptree)->f, peerAS, expand); -- ne->restrict((FilterAFI *) ptree); -+/* patch NE.cc-20040805.patch by RIPE NCC, but pkgsrc'ified */ -+ if ((ne->singleton_flag == NormalTerm::PRFX) || -+ (ne->singleton_flag == NormalTerm::IPV6_PRFX)) -+ ne->restrict((FilterAFI *) ptree); - Debug(Channel(DBG_NOT) << "op1: " << *ne << "\n"); - Debug(Channel(DBG_NOT) << "afi: " << *ne << "\n"); - return ne; diff --git a/net/irrtoolset-nox11/patches/patch-aq b/net/irrtoolset-nox11/patches/patch-aq deleted file mode 100644 index 2082f2595ae..00000000000 --- a/net/irrtoolset-nox11/patches/patch-aq +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-aq,v 1.1.1.1 2005/02/28 12:37:29 spz Exp $ - ---- src/rpsl/gnu/PrefixRange.Plex.h.orig 2002-03-27 12:33:00.000000000 +0100 -+++ src/rpsl/gnu/PrefixRange.Plex.h -@@ -288,7 +288,7 @@ inline PrefixRange* PrefixRangeIChunk:: - - inline int PrefixRangeIChunk:: index_of(const PrefixRange* p) const - { -- return ((int)p - (int)data) / sizeof(PrefixRange) + base; -+ return (p - data) + base; - } - - inline int PrefixRangeIChunk:: possible_index(int i) const diff --git a/net/irrtoolset-nox11/patches/patch-ar b/net/irrtoolset-nox11/patches/patch-ar deleted file mode 100644 index 72689357d16..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ar +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ar,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/gnug++/unsigned.Plex.h.orig 2002-03-27 12:32:57.000000000 +0100 -+++ src/gnug++/unsigned.Plex.h -@@ -288,7 +288,7 @@ inline unsigned* unsignedIChunk:: point - - inline int unsignedIChunk:: index_of(const unsigned* p) const - { -- return ((int)p - (int)data) / sizeof(unsigned) + base; -+ return (p - data) + base; - } - - inline int unsignedIChunk:: possible_index(int i) const diff --git a/net/irrtoolset-nox11/patches/patch-as b/net/irrtoolset-nox11/patches/patch-as deleted file mode 100644 index a3fce685f16..00000000000 --- a/net/irrtoolset-nox11/patches/patch-as +++ /dev/null @@ -1,29 +0,0 @@ -$NetBSD: patch-as,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/irr/cache.hh.orig 2002-04-09 13:48:47.000000000 +0200 -+++ src/irr/cache.hh -@@ -77,13 +77,13 @@ public: - Cache(void) : CacheKeyCacheValueAVLMap(cDefaultValue) {} - // Add stuff into cache - bool add(K aKey, V aValue) { -- (*this)[(CacheKey)aKey] = CacheValue(aValue); -+ (*this)[(CacheKey)(intptr_t)aKey] = CacheValue(aValue); - return true; - } - ~Cache(void) { clear(); } - // Retrieve stuff from cache - bool query(K aKey, V &arValue) { -- CacheValue *pcValue = &(*this)[(CacheKey)aKey]; -+ CacheValue *pcValue = &(*this)[(CacheKey)(intptr_t)aKey]; - // if not found, it always return default value: cDefaultValue - // we never increase count of default value, so, it's safe to determine - // cache miss by just checking the reference count to see if it's 0 -@@ -97,7 +97,7 @@ public: - return false; - } - void nullify(K aKey) { -- CacheValue *pcValue = &(*this)[(CacheKey)aKey]; -+ CacheValue *pcValue = &(*this)[(CacheKey)(intptr_t)aKey]; - pcValue->pvData = NULL; - } - // Override the function on the base class diff --git a/net/irrtoolset-nox11/patches/patch-at b/net/irrtoolset-nox11/patches/patch-at deleted file mode 100644 index 280aec6090e..00000000000 --- a/net/irrtoolset-nox11/patches/patch-at +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-at,v 1.1.1.1 2005/02/28 12:37:30 spz Exp $ - ---- src/rpsl/gnu/SymID.VHSet.cc.orig 2002-03-27 12:33:00.000000000 +0100 -+++ src/rpsl/gnu/SymID.VHSet.cc -@@ -174,7 +174,7 @@ Pix SymIDVHSet::first() const - void SymIDVHSet::next(Pix& i) const - { - if (i == 0) return; -- unsigned int pos = ((unsigned)i - (unsigned)tab) / sizeof(SymID) + 1; -+ unsigned int pos = ((SymID *)i - tab) + 1; - for (; pos < size; ++pos) - if (status[pos] == VALIDCELL) - { diff --git a/net/irrtoolset-nox11/patches/patch-bj b/net/irrtoolset-nox11/patches/patch-bj index e78ffd80314..3716eafe562 100644 --- a/net/irrtoolset-nox11/patches/patch-bj +++ b/net/irrtoolset-nox11/patches/patch-bj @@ -1,7 +1,7 @@ -$NetBSD: patch-bj,v 1.1 2005/03/06 11:40:21 spz Exp $ +$NetBSD: patch-bj,v 1.2 2007/05/22 12:17:49 spz Exp $ ---- src/Core/util/Buffer.cc.orig 2004-07-30 12:58:10.000000000 +0200 -+++ src/Core/util/Buffer.cc +--- ./src/Core/util/Buffer.cc.orig 2006-10-09 18:05:14.000000000 +0200 ++++ ./src/Core/util/Buffer.cc @@ -36,7 +36,11 @@ #include <cassert> #include <iomanip> @@ -14,3 +14,15 @@ $NetBSD: patch-bj,v 1.1 2005/03/06 11:40:21 spz Exp $ using namespace std; +@@ -174,7 +178,10 @@ Buffer::uncompress() + + void Buffer::extend(unsigned long minExtend) { + assert(!callerAllocated); // !!! +- capacity = (capacity + BufferExtendIncrement) >? (size + minExtend); ++ // using deprecated g++ only operators is not that portable, ++ // use ordinary trigraph instead ++ capacity = ( (capacity + BufferExtendIncrement) > (size + minExtend) ) ? ++ (capacity + BufferExtendIncrement) : (size + minExtend); + contents = (char *)realloc(contents, capacity); + } + diff --git a/net/irrtoolset-nox11/patches/patch-bk b/net/irrtoolset-nox11/patches/patch-bk index 8fe9defba3a..2662859a346 100644 --- a/net/irrtoolset-nox11/patches/patch-bk +++ b/net/irrtoolset-nox11/patches/patch-bk @@ -1,4 +1,4 @@ -$NetBSD: patch-bk,v 1.1 2005/03/06 11:40:21 spz Exp $ +$NetBSD: patch-bk,v 1.2 2007/05/22 12:17:49 spz Exp $ --- src/Core/util/rusage.cc.orig 2004-07-30 12:58:10.000000000 +0200 +++ src/Core/util/rusage.cc @@ -14,29 +14,3 @@ $NetBSD: patch-bk,v 1.1 2005/03/06 11:40:21 spz Exp $ #include "rusage.hh" #include <iomanip> -@@ -83,7 +87,6 @@ extern "C" { - #endif - } - -- - double tv2f(timeval &tv) - /* Converts a timeval into a double giving the time in seconds. */ - { -@@ -114,7 +117,7 @@ ostream& operator<<(ostream& stream, Rus - stime = tv2f(self.ru_stime) - ru.last_stime; - rtime = tv2f(end_time) - ru.last_rtime; - -- stream << fixed << setprecision(2); -+ stream << setiosflags(ostream::fixed) << setprecision(2); - stream << " times: " - << utime << " " - << stime << " " -@@ -137,7 +140,7 @@ ostream& operator<<(ostream& stream, Rus - stream << " vo/nv cs: " - << self.ru_nvcsw << " " - << self.ru_nivcsw << endl; -- stream << scientific << setprecision(0); -+ stream << setiosflags(ostream::scientific) << setprecision(0); - return stream; - } - diff --git a/net/irrtoolset-nox11/patches/patch-bt b/net/irrtoolset-nox11/patches/patch-bt index 210dda4d8b8..49811c10ca8 100644 --- a/net/irrtoolset-nox11/patches/patch-bt +++ b/net/irrtoolset-nox11/patches/patch-bt @@ -1,4 +1,4 @@ -$NetBSD: patch-bt,v 1.2 2005/08/26 08:41:46 spz Exp $ +$NetBSD: patch-bt,v 1.3 2007/05/22 12:17:49 spz Exp $ --- src/RtConfig/command.y.orig 2004-07-30 12:58:11.000000000 +0200 +++ src/RtConfig/command.y @@ -14,27 +14,3 @@ $NetBSD: patch-bt,v 1.2 2005/08/26 08:41:46 spz Exp $ #include <cstring> #include <cstdlib> #include <cctype> -@@ -174,7 +178,7 @@ input_line: import_line - | pkt_filter_line - | outbound_pkt_filter_line - | cisco_map_name_line --//| junos_policy_name_line -+| junos_policy_name_line - | cisco_map_inc_line - | cisco_map_start_line - | cisco_access_list_no_line -@@ -333,14 +337,12 @@ cisco_map_name_line: KW_SET KW_CISCO_MAP - << CiscoConfig::mapNameFormat << "'" << std::endl; - } - ; --/* - junos_policy_name_line: KW_SET KW_JUNOS_POLICY_NAME '=' TKN_STR { - strcpy(JunosConfig::mapNameFormat, $4); - Trace(TR_INPUT) << "RtConfig: junos_policy_name '" - << JunosConfig::mapNameFormat << "'" << endl; - } - ; --*/ - cisco_map_inc_line: KW_SET KW_CISCO_MAP_INC '=' TKN_INT { - CiscoConfig::mapIncrements = $4; - Trace(TR_INPUT) << "RtConfig: cisco_map_increment_by '" diff --git a/net/irrtoolset-nox11/patches/patch-bw b/net/irrtoolset-nox11/patches/patch-bw deleted file mode 100644 index 06a00b1f974..00000000000 --- a/net/irrtoolset-nox11/patches/patch-bw +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-bw,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/RtConfig/f_cisco.cc.orig 2004-07-30 12:58:11.000000000 +0200 -+++ src/RtConfig/f_cisco.cc -@@ -1879,7 +1879,7 @@ void CiscoConfig::exportGroup(ASt asno, - sprintf(mapName, mapNameFormat, asno, mapCount++); - for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { - ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), ~0); -- last = print(ne, fa->action, IMPORT, (ItemAFI *) afi);; -+ last = print(ne, fa->action, EXPORT, (ItemAFI *) afi);; - delete ne; - } - } diff --git a/net/irrtoolset-nox11/patches/patch-bx b/net/irrtoolset-nox11/patches/patch-bx deleted file mode 100644 index a0c29e951d3..00000000000 --- a/net/irrtoolset-nox11/patches/patch-bx +++ /dev/null @@ -1,36 +0,0 @@ -$NetBSD: patch-bx,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/RtConfig/RtConfig.cc.orig 2004-07-30 12:58:10.000000000 +0200 -+++ src/RtConfig/RtConfig.cc -@@ -111,8 +111,8 @@ typedef struct { - } config_format_type; - - CiscoConfig ciscoConfig; --/* - JunosConfig junosConfig; -+/* - GatedConfig gatedConfig; - RSdConfig rsdConfig; - BccConfig bccConfig; -@@ -122,7 +122,7 @@ config_format_type config_formats[] = { - // { "rsd", &rsdConfig }, - // { "gated", &gatedConfig }, - { "cisco", &ciscoConfig }, --// { "junos", &junosConfig }, -+ { "junos", &junosConfig }, - // { "bcc", &bccConfig }, - // { "rsd", rsd_process_line }, - { "", 0 } -@@ -214,11 +214,9 @@ void init_and_set_options (int argc, cha - {"-cisco_empty_lists", ARGV_BOOL, - (char *) NULL, (char *) &CiscoConfig::emptyLists, - "Generate access lists for ANY and NOT ANY prefix filters.\n\t\t\t\tCisco only."}, -- --/* {"-junos_no_compress_acls", ARGV_BOOL, -+ {"-junos_no_compress_acls", ARGV_BOOL, - (char *) NULL, (char *) &JunosConfig::compressAcls, - "Do not combine multiple route-filter lines into a single line whenever possible.\n\t\t\t\tJunos only."}, --*/ - {(char *) NULL, ARGV_END, (char *) NULL, (char *) NULL, - (char *) NULL} - }; diff --git a/net/irrtoolset-nox11/patches/patch-by b/net/irrtoolset-nox11/patches/patch-by deleted file mode 100644 index 3141dfb3792..00000000000 --- a/net/irrtoolset-nox11/patches/patch-by +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-by,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/RtConfig/Makefile.in.orig 2004-07-16 18:41:50.000000000 +0200 -+++ src/RtConfig/Makefile.in -@@ -6,9 +6,9 @@ GOAL = RtConfig - #SRCS = RtConfig.cc command.y.cc command.l.cc f_bcc.cc f_cisco.cc f_gated.cc f_rsd.cc f_junos.cc - #HFILES = RtConfig.hh command.y.hh command.l.hh f_bcc.hh f_cisco.hh f_gated.hh f_rsd.hh f_junos.hh - --OBJS = RtConfig.o command.y.o command.l.o f_cisco.o --SRCS = RtConfig.cc command.y.cc command.l.cc f_cisco.cc --HFILES = RtConfig.hh command.y.hh command.l.hh f_cisco.hh -+OBJS = RtConfig.o command.y.o command.l.o f_cisco.o f_junos.o -+SRCS = RtConfig.cc command.y.cc command.l.cc f_cisco.cc f_junos.cc -+HFILES = RtConfig.hh command.y.hh command.l.hh f_cisco.hh f_junos.hh - - - OTHERS = command.l command.y diff --git a/net/irrtoolset-nox11/patches/patch-bz b/net/irrtoolset-nox11/patches/patch-bz deleted file mode 100644 index e61664d7730..00000000000 --- a/net/irrtoolset-nox11/patches/patch-bz +++ /dev/null @@ -1,724 +0,0 @@ -$NetBSD: patch-bz,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/RtConfig/f_junos.cc.orig 2003-07-24 13:20:48.000000000 +0200 -+++ src/RtConfig/f_junos.cc -@@ -53,10 +53,9 @@ - - #include "config.h" - #include <cstring> --#include <iostream.h> --#include <strstream.h> --#include <iomanip.h> --#include <strstream.h> -+#include <iostream> -+#include <sstream> -+#include <iomanip> - #include <cctype> - #include "normalform/NE.hh" - #include "irr/irr.hh" -@@ -66,6 +65,8 @@ - #include "f_junos.hh" - #include "rpsl/schema.hh" - -+using namespace std; -+ - #define DBG_JUNOS 7 - #define EXPORT 0 - #define IMPORT 1 -@@ -85,12 +86,14 @@ bool JunosConfig::exportStatics = false; - - //////////////////////////// caches //////////////////////////////// - -+// most of these are already defined in f_cisco.cc - //AccessListManager<regexp_nf> aspathMgr; - //AccessListManager<SetOfPrefix> prefixMgr(100); --//AccessListManager<SetOfPrefix> pktFilterMgr(100); -+//AccessListManager<SetOfIPv6Prefix> ipv6prefixMgr(100); - //AccessListManager<FilterOfCommunity> communityMgr; -+AccessListManager<CommunitySet> communityMgr2; -+//AccessListManager<SetOfPrefix> pktFilterMgr(100); - --AccessListManager<CommunitySet> communityMgr2; - - void JunosConfig::printMartians() { - static int done = 0; -@@ -101,21 +104,21 @@ void JunosConfig::printMartians() { - done = 1; - - // print martians -- char *martians = " -- route-filter 127.0.0.0/8 orlonger reject; -- route-filter 10.0.0.0/8 orlonger reject; -- route-filter 172.16.0.0/12 orlonger reject; -- route-filter 192.168.0.0/16 orlonger reject; -- route-filter 192.0.2.0/24 orlonger reject; -- route-filter 128.0.0.0/16 orlonger reject; -- route-filter 191.255.0.0/16 orlonger reject; -- route-filter 192.0.0.0/24 orlonger reject; -- route-filter 223.255.255.0/24 orlonger reject; -- route-filter 224.0.0.0/3 orlonger reject; -- route-filter 169.254.0.0/16 orlonger reject; -- route-filter 0.0.0.0/0 upto /31 next policy; -- route-filter 0.0.0.0/0 upto /32 reject; --"; -+ char *martians = -+ "route-filter 127.0.0.0/8 orlonger reject;\n" -+ "route-filter 10.0.0.0/8 orlonger reject;\n" -+ "route-filter 172.16.0.0/12 orlonger reject;\n" -+ "route-filter 192.168.0.0/16 orlonger reject;\n" -+ "route-filter 192.0.2.0/24 orlonger reject;\n" -+ "route-filter 128.0.0.0/16 orlonger reject;\n" -+ "route-filter 191.255.0.0/16 orlonger reject;\n" -+ "route-filter 192.0.0.0/24 orlonger reject;\n" -+ "route-filter 223.255.255.0/24 orlonger reject;\n" -+ "route-filter 224.0.0.0/3 orlonger reject;\n" -+ "route-filter 169.254.0.0/16 orlonger reject;\n" -+ "route-filter 0.0.0.0/0 upto /31 next policy;\n" -+ "route-filter 0.0.0.0/0 upto /32 reject;\n" -+ ; - - cout << " policy-statement supress-martians {\n" - << " term martians {\n" -@@ -126,6 +129,93 @@ void JunosConfig::printMartians() { - << " }\n\n"; - } - -+ListOf2Ints *JunosConfig::printRoutes(SetOfIPv6Prefix& nets) { -+ -+ // return the access list number if something is printed -+ ListOf2Ints *result; -+ -+ if (nets.universal()) -+ return NULL; -+ -+ // check to see if we already printed an identical access list -+ if (useAclCaches && (result = ipv6prefixMgr.search(nets))) -+ return result; -+ -+ result = ipv6prefixMgr.add(nets); -+ int aclID = ipv6prefixMgr.newID(); -+ result->add(aclID, aclID); -+ -+ int allow_flag = 1; -+ if (nets.negated()) -+ allow_flag = 0; -+ -+ char *permitOrDeny = " reject;"; -+ char *negatedPermitOrDeny = " accept;"; -+ if (allow_flag) { -+ permitOrDeny = " accept;"; -+ negatedPermitOrDeny = " reject;"; -+ } -+ -+ cout << " policy-statement prefix-list-" << aclID << " {\n" -+ << " term prefixes {\n" -+ << " from {\n"; -+ -+ IPv6RadixSet::SortedPrefixIterator itr(&nets.members); -+ ipv6_addr_t addr; -+ u_int leng; -+ char buffer[256]; -+ /* -+ if (compressAcls) { -+ u_int start; -+ u_int end; -+ for (bool ok = itr.first(addr, leng, start, end); -+ ok; -+ ok = itr.next(addr, leng, start, end)) { -+ for (unsigned int sibling=0; sibling < (1<<(start-leng)); ++sibling) -+{ -+ unsigned int siblingMask = sibling << (128 - start); -+ ipv6_addr_t siblingAddr = addr | siblingMask; -+ -+ cout << " route-filter "; -+ cout << ipv62hex(&siblingAddr, buffer) << "/" << start; -+ -+ if (end != start) -+ cout << " upto /" << end; -+ else -+ cout << " exact"; -+ -+ cout << permitOrDeny << "\n"; -+ } -+ } -+ } else { -+ */ -+ for (bool ok = itr.first(addr, leng); -+ ok; -+ ok = itr.next(addr, leng)) { -+ cout << " route-filter "; -+ -+ cout << ipv62hex(&addr, buffer) << "/" << leng; -+ -+ cout << " exact" << permitOrDeny << "\n"; -+ } -+/* } */ -+ -+ cout << " }\n" -+ << " }\n" -+ << " term catch-rest {\n"; -+ -+ // terminate the acess lis -+ if (allow_flag) -+ cout << " then reject;\n"; -+ else -+ cout << " then accept;\n"; -+ -+ cout << " }\n" -+ << " }\n\n"; -+ -+ return result; -+} -+ - ListOf2Ints *JunosConfig::printRoutes(SetOfPrefix& nets) { - // return the access list number if something is printed - ListOf2Ints *result; -@@ -330,18 +420,17 @@ int JunosConfig::printRE_(ostream& os, c - } - - int JunosConfig::printRE(ostream& os, const regexp& r) { -- strstream sout; -+ ostringstream out; - bool hasBOL = false; - bool hasEOL = false; -- printRE_(sout, r, hasBOL, hasEOL); -- sout << ends; -+ printRE_(out, r, hasBOL, hasEOL); -+ out << ends; - - if (!hasBOL) - os << ".* "; -- os << sout.str(); -+ os << out.str(); - if (!hasEOL) - os << " .*"; -- sout.freeze(0); - - return 1; - } -@@ -465,8 +554,8 @@ int JunosConfig::printCommunitySet(ostre - ListOf2Ints *JunosConfig::printCommunities(FilterOfCommunity& cm) { - // return the access list numbers if something is printed - ListOf2Ints *result; -- ostrstream lastCout; -- ostrstream midCout; -+ ostringstream lastCout; -+ ostringstream midCout; - int term = 0; - int id; - -@@ -575,13 +664,11 @@ ListOf2Ints *JunosConfig::printCommuniti - - midCout << ends; - cout << midCout.str(); -- midCout.freeze(0); - - cout << " }\n\n"; - - lastCout << ends; - cout << "\n" << lastCout.str(); -- lastCout.freeze(0); - - for (int i = 1; i <= count; ++i) - cout << " term comm-" << aclID << "-" << ++term << " {\n" -@@ -592,11 +679,9 @@ ListOf2Ints *JunosConfig::printCommuniti - } else { - lastCout << ends; - cout << "\n" << lastCout.str(); -- lastCout.freeze(0); - - midCout << ends; - cout << midCout.str(); -- midCout.freeze(0); - } - - cout << " term community-" << aclID << "-catch-rest {\n" -@@ -607,7 +692,7 @@ ListOf2Ints *JunosConfig::printCommuniti - return result; - } - --void JunosConfig::printActions(ostream &os, PolicyActionList *actions) { -+void JunosConfig::printActions(ostream &os, PolicyActionList *actions, ItemAFI *afi) { - #define UNIMPLEMENTED_METHOD \ - cerr << "Warning: unimplemented method " \ - << actn->rp_attr->name << "." << actn->rp_method->name << endl -@@ -625,10 +710,19 @@ void JunosConfig::printActions(ostream & - - if (actn->rp_attr == dctn_rp_nhop) { - if (actn->rp_method == dctn_rp_nhop_set) { -- char buffer[32]; -- IPAddr *ip = ((ItemIPV4 *) actn->args->head())->ipv4; -- ip->get_text(buffer); -- os << " nexthop " << buffer << ";\n"; -+ if (afi->is_ipv4() && (typeid(*(actn->args->head())) == typeid(ItemIPV4))) { -+ char buffer[32]; -+ IPAddr *ip = ((ItemIPV4 *) actn->args->head())->ipv4; -+ ip->get_text(buffer); -+ os << " nexthop " << buffer << ";\n"; -+ } else if (afi->is_ipv6() && (typeid(*(actn->args->head())) == typeid(ItemIPV6))) { -+ char buffer[50]; -+ IPv6Addr *ip = ((ItemIPV6 *) actn->args->head())->ipv6; -+ ip->get_text(buffer); -+ os << " set ipv6 next-hop " << buffer << "\n"; -+ } else { -+ cout << "Warning: next-hop address family doesn't match protocol address family, ignoring next-hop..." << endl; -+ } - } else - UNIMPLEMENTED_METHOD; - continue; -@@ -719,13 +813,14 @@ int JunosConfig::printDeclarations(Norma - (void) printCommunities(nt->community); - (void) printASPaths(nt->as_path); - (void) printRoutes(nt->prfx_set); -+ (void) printRoutes(nt->ipv6_prfx_set); - } - - return 1; - } - - int JunosConfig::print(NormalExpression *ne, PolicyActionList *actn, -- int import_flag) { -+ int import_flag, ItemAFI *afi) { - int last = 0; - static ListOf2Ints empty_list(1); - -@@ -745,7 +840,14 @@ int JunosConfig::print(NormalExpression - for (NormalTerm *nt = ne->first(); nt; nt = ne->next()) { - ListOf2Ints *aspath_acls = printASPaths(nt->as_path); - ListOf2Ints *comm_acls = printCommunities(nt->community); -- ListOf2Ints *prfx_acls = printRoutes(nt->prfx_set); -+ ListOf2Ints *prfx_acls; -+ -+ if (afi->is_ipv4()) { -+ prfx_acls = printRoutes(nt->prfx_set); -+ } else if (afi->is_ipv6()) { -+ prfx_acls = printRoutes(nt->ipv6_prfx_set); -+ } -+ - - if (!aspath_acls) - aspath_acls = &empty_list; -@@ -779,7 +881,7 @@ int JunosConfig::print(NormalExpression - - cout << " }\n" - << " then {\n"; -- JunosConfig::printActions(cout, actn); -+ JunosConfig::printActions(cout, actn, afi); - cout << " }\n"; - cout << " }\n\n"; - } -@@ -791,11 +893,18 @@ int JunosConfig::print(NormalExpression - return last; - } - --bool JunosConfig::printNeighbor(int import, -- ASt peerAS, char *neighbor, bool peerGroup) { -+bool JunosConfig::printNeighbor(int import, ASt asno, -+ ASt peerAS, char *neighbor, bool peerGroup, -+ ItemAFI *peer_afi, ItemAFI *filter_afi) { -+ bool afi_activate = false; -+ - if (! printRouteMap) - return false; - -+ if (!peerGroup && (!filter_afi->is_default() || !peer_afi->is_default())) -+ afi_activate = true; -+ -+ const char *indent = (afi_activate) ? " " : ""; - const char *direction = (import == IMPORT) ? "import" : "export"; - - cout << "protocols {\n" -@@ -822,6 +931,12 @@ bool JunosConfig::printNeighbor(int impo - setMEDtoIGP = false; - } - -+ if (afi_activate) { -+ cout << " family " << (AddressFamily &) *filter_afi << " { "<< endl; -+ cout << " any;" << endl; -+ cout << " } " << endl; -+ } -+ - cout << " }\n" - << " }\n" - << " }\n" -@@ -830,11 +945,11 @@ bool JunosConfig::printNeighbor(int impo - return true; - } - --void JunosConfig::exportP(ASt asno, IPAddr *addr, -- ASt peerAS, IPAddr *peer_addr) { -+void JunosConfig::exportP(ASt asno, MPPrefix *addr, -+ ASt peerAS, MPPrefix *peer_addr) { - - // Made asno part of the map name if it's not changed by users -- sprintf(mapName, mapNameFormat, asno, mapCount++); -+ sprintf(mapName, mapNameFormat, peerAS, mapCount++); - - // get the aut-num object - const AutNum *autnum = irr->getAutNum(asno); -@@ -847,32 +962,52 @@ void JunosConfig::exportP(ASt asno, IPAd - // get matching export attributes - AutNumSelector<AttrExport> itr(autnum, "export", - NULL, peerAS, peer_addr, addr); -- const FilterAction *fa = itr.first(); -+ AutNumSelector<AttrExport> itr1(autnum, "mp-export", -+ NULL, peerAS, peer_addr, addr); -+ -+ List<FilterAction> *common_list = itr.get_fa_list(); -+ common_list->splice(*(itr1.get_fa_list())); -+ -+ FilterAction *fa = common_list->head(); - if (! fa) { -- printPolicyWarning(asno, addr, peerAS, peer_addr, "export"); -+ printPolicyWarning(asno, addr, peerAS, peer_addr, "export/mp-export"); - return; - } - -+ ItemList *afi_list = itr.get_afi_list(); -+ afi_list->merge(*(itr1.get_afi_list())); -+ -+ if (afi_list->isEmpty()) { -+ cout << "Warning: No AFI resulted from policy" << endl; -+ } -+ - cout << "policy-options {\n"; - printMartians(); - - NormalExpression *ne; -- int last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, peerAS); -- last = printDeclarations(ne, fa->action, EXPORT); -- delete ne; -+ NormalExpression done; -+ int last; -+ -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), peerAS); -+ last = printDeclarations(ne, fa->action, EXPORT); -+ delete ne; -+ } - } - - cout << " policy-statement " << mapName << " {\n"; - -- fa = itr.first(); -- last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, peerAS); -- last = print(ne, fa->action, EXPORT); -- delete ne; -- } -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), peerAS); -+ last = print(ne, fa->action, EXPORT, (ItemAFI *) afi); -+ delete ne; -+ } -+ } - - cout << " term " << mapName << "-catch-rest {\n" - << " then reject;\n" -@@ -880,14 +1015,16 @@ void JunosConfig::exportP(ASt asno, IPAd - << " }\n" - << "}\n\n"; - -- printNeighbor(EXPORT, peerAS, peer_addr->get_text(), false); -+ ItemAFI *peer_afi = new ItemAFI(peer_addr->get_afi()); -+ -+ printNeighbor(EXPORT, asno, peerAS, peer_addr->get_ip_text(), false, (ItemAFI *) peer_afi, (ItemAFI *) afi_list); - } - --void JunosConfig::importP(ASt asno, IPAddr *addr, -- ASt peerAS, IPAddr *peer_addr) { -+void JunosConfig::importP(ASt asno, MPPrefix *addr, -+ ASt peerAS, MPPrefix *peer_addr) { - - // Made asno part of the map name if it's not changed by users -- sprintf(mapName, mapNameFormat, asno, mapCount++); -+ sprintf(mapName, mapNameFormat, peerAS, mapCount++); - - // get the aut-num object - const AutNum *autnum = irr->getAutNum(asno); -@@ -901,31 +1038,47 @@ void JunosConfig::importP(ASt asno, IPAd - // get matching import attributes - AutNumSelector<AttrImport> itr(autnum, "import", - NULL, peerAS, peer_addr, addr); -- const FilterAction *fa = itr.first(); -- if (! fa) { -- printPolicyWarning(asno, addr, peerAS, peer_addr, "import"); -- return; -+ AutNumSelector<AttrExport> itr1(autnum, "mp-import", -+ NULL, peerAS, peer_addr, addr); -+ -+ List<FilterAction> *common_list = itr.get_fa_list(); -+ common_list->splice(*(itr1.get_fa_list())); -+ -+ FilterAction *fa = common_list->head(); -+ if (! fa) { -+ printPolicyWarning(asno, addr, peerAS, peer_addr, "import/mp-import"); -+ return; - } - -+ ItemList *afi_list = itr.get_afi_list(); -+ afi_list->merge(*(itr1.get_afi_list())); -+ - cout << "policy-options {\n"; - printMartians(); - - NormalExpression *ne; -- int last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, peerAS); -- last = printDeclarations(ne, fa->action, IMPORT); -- delete ne; -+ NormalExpression done; -+ int last; -+ -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), peerAS); -+ last = printDeclarations(ne, fa->action, IMPORT); -+ delete ne; -+ } - } - - cout << " policy-statement " << mapName << " {\n"; - -- fa = itr.first(); -- last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, peerAS); -- last = print(ne, fa->action, IMPORT); -- delete ne; -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), peerAS); -+ last = print(ne, fa->action, IMPORT, (ItemAFI *) afi); -+ delete ne; -+ } - } - - cout << " term " << mapName << "-catch-rest {\n" -@@ -934,11 +1087,14 @@ void JunosConfig::importP(ASt asno, IPAd - << " }\n" - << "}\n\n"; - -- printNeighbor(IMPORT, peerAS, peer_addr->get_text(), false); -+ ItemAFI *peer_afi = new ItemAFI(peer_addr->get_afi()); -+ -+ printNeighbor(IMPORT, asno, peerAS, peer_addr->get_text(), false, (ItemAFI *) peer_afi, (ItemAFI *) afi_list); - } - --void JunosConfig::static2bgp(ASt asno, IPAddr *addr) { -- // Made asno part of the map name if it's not changed by users -+void JunosConfig::static2bgp(ASt asno, MPPrefix *addr) { -+ -+ // make static2bgp map obvious - strcpy(mapName, "static2bgp"); - - // get the aut-num object -@@ -952,30 +1108,45 @@ void JunosConfig::static2bgp(ASt asno, I - // get matching import attributes - AutNumSelector<AttrImport> itr(autnum, "import", - NULL, asno, addr, addr, "STATIC"); -- const FilterAction *fa = itr.first(); -+ AutNumSelector<AttrImport> itr1(autnum, "mp-import", -+ NULL, asno, addr, addr, "STATIC"); -+ -+ List<FilterAction> *common_list = itr.get_fa_list(); -+ common_list->splice(*(itr1.get_fa_list())); -+ -+ const FilterAction *fa = common_list->head(); - if (! fa) - cerr << "Warning: AS" << asno - << " has no static2bgp policy for AS" << asno << endl; - -+ ItemList *afi_list = itr.get_afi_list(); -+ afi_list->merge(*(itr1.get_afi_list())); -+ - cout << "policy-options {\n"; - printMartians(); - - NormalExpression *ne; -- int last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, asno); -- last = printDeclarations(ne, fa->action, STATIC); -- delete ne; -+ NormalExpression done; -+ int last; -+ -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), asno); -+ last = printDeclarations(ne, fa->action, STATIC); -+ delete ne; -+ } - } - - cout << " policy-statement static2bgp {\n"; - -- fa = itr.first(); -- last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, asno); -- last = print(ne, fa->action, STATIC); -- delete ne; -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), asno); -+ last = print(ne, fa->action, STATIC, (ItemAFI *) afi); -+ delete ne; -+ } - } - - cout << " term static2bgp-catch-rest {\n" -@@ -1004,7 +1175,23 @@ void JunosConfig::networks(ASt asno) { - } - } - -+void JunosConfig::IPv6networks(ASt asno) { -+ static char buffer[128]; -+ static char buffer2[128]; -+ const MPPrefixRanges *nets = irr->expandAS(asno); -+ MPPrefixRanges::const_iterator p; -+ -+ for (p = nets->begin(); p != nets->end(); ++p) { -+ if (p->ipv6) { -+ cout << "network " << p->ipv6->get_ip_text() -+ << " mask " << p->ipv6->get_mask() -+ << ";\n"; -+ } -+ } -+} -+ - void JunosConfig::exportGroup(ASt asno, char * pset) { -+ - // Made asno part of the map name if it's not changed by users - sprintf(mapName, mapNameFormat, asno, mapCount++); - -@@ -1019,30 +1206,43 @@ void JunosConfig::exportGroup(ASt asno, - SymID psetID = symbols.symID(pset); - // get matching export attributes - AutNumSelector<AttrExport> itr(autnum, "export", psetID, ~0, NULL, NULL); -- const FilterAction *fa = itr.first(); -+ AutNumSelector<AttrExport> itr1(autnum, "mp-export", psetID, ~0, NULL, NULL); -+ -+ List<FilterAction> *common_list = itr.get_fa_list(); -+ common_list->splice(*(itr1.get_fa_list())); -+ -+ FilterAction *fa = common_list->head(); - if (! fa) - cerr << "Warning: AS" << asno -- << " has no export policy for " << pset << endl; -+ << " has no export/mp-export policy for " << pset << endl; -+ -+ ItemList *afi_list = itr.get_afi_list(); -+ afi_list->merge(*(itr1.get_afi_list())); - - cout << "policy-options {\n"; - printMartians(); - - NormalExpression *ne; -- int last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, ~0); -- last = printDeclarations(ne, fa->action, EXPORT); -- delete ne; -+ int last; -+ -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), ~0); -+ last = printDeclarations(ne, fa->action, EXPORT); -+ delete ne; -+ } - } - - cout << " policy-statement " << mapName << " {\n"; - -- fa = itr.first(); -- last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, ~0); -- last = print(ne, fa->action, EXPORT); -- delete ne; -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), ~0); -+ last = print(ne, fa->action, EXPORT, (ItemAFI *) afi); -+ delete ne; -+ } - } - - cout << " term " << mapName << "-catch-rest {\n" -@@ -1117,30 +1317,44 @@ void JunosConfig::importGroup(ASt asno, - SymID psetID = symbols.symID(pset); - // get matching import attributes - AutNumSelector<AttrImport> itr(autnum, "import", psetID, ~0, NULL, NULL); -- const FilterAction *fa = itr.first(); -+ AutNumSelector<AttrExport> itr1(autnum, "mp-import", psetID, ~0, NULL, NULL); -+ -+ List<FilterAction> *common_list = itr.get_fa_list(); -+ common_list->splice(*(itr1.get_fa_list())); -+ -+ FilterAction *fa = common_list->head(); -+ - if (! fa) - cerr << "Warning: AS" << asno -- << " has no import policy for " << pset << endl; -+ << " has no import/mp-import policy for " << pset << endl; -+ -+ ItemList *afi_list = itr.get_afi_list(); -+ afi_list->merge(*(itr1.get_afi_list())); - - cout << "policy-options {\n"; - printMartians(); - - NormalExpression *ne; -- int last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, ~0); -- last = printDeclarations(ne, fa->action, IMPORT); -- delete ne; -+ int last; -+ -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), ~0); -+ last = printDeclarations(ne, fa->action, IMPORT); -+ delete ne; -+ } - } - - cout << " policy-statement " << mapName << " {\n"; - -- fa = itr.first(); -- last = 0; -- for (; fa && !last; fa = itr.next()) { -- ne = NormalExpression::evaluate(fa->filter, ~0); -- last = print(ne, fa->action, IMPORT); -- delete ne; -+ for (Item *afi = afi_list->head(); afi; afi = afi_list->next(afi)) { -+ last = 0; -+ for (fa = common_list->head(); fa && !last; fa = common_list->next(fa)) { -+ ne = NormalExpression::evaluate(new FilterAFI((ItemAFI *) afi->dup(), fa->filter), ~0); -+ last = print(ne, fa->action, IMPORT, (ItemAFI *) afi); -+ delete ne; -+ } - } - - cout << " term " << mapName << "-catch-rest {\n" diff --git a/net/irrtoolset-nox11/patches/patch-ca b/net/irrtoolset-nox11/patches/patch-ca deleted file mode 100644 index 36229c00b52..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ca +++ /dev/null @@ -1,87 +0,0 @@ -$NetBSD: patch-ca,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/RtConfig/f_junos.hh.orig 2002-04-09 13:48:46.000000000 +0200 -+++ src/RtConfig/f_junos.hh -@@ -57,9 +57,12 @@ - #include "config.h" - #include "util/List.hh" - #include "normalform/FilterOfASPath.hh" -+#include "irr/irr.hh" -+#include "irr/autnum.hh" -+ -+#include <sstream> - - class FilterOfCommunity; --class ostream; - class RangeList; - class regexp; - class PolicyAction; -@@ -78,12 +81,13 @@ public: - distributeListNo = -1; - routeMapID = 1; - } -- void importP(ASt as, IPAddr* addr, ASt peerAS, IPAddr* peerAddr); -- void exportP(ASt as, IPAddr* addr, ASt peerAS, IPAddr* peerAddr); -+ void importP(ASt as, MPPrefix* addr, ASt peerAS, MPPrefix* peerAddr); -+ void exportP(ASt as, MPPrefix* addr, ASt peerAS, MPPrefix* peerAddr); - void exportGroup(ASt as, char *pset); - void importGroup(ASt as, char *pset); -- void static2bgp(ASt as, IPAddr* addr); -+ void static2bgp(ASt as, MPPrefix* addr); - void networks(ASt as); -+ void IPv6networks(ASt as); - - public: - // options -@@ -106,19 +110,26 @@ private: - bool reSplittable; - - private: -+ ListOf2Ints *printRoutes(SetOfIPv6Prefix& nets); - ListOf2Ints *printRoutes(SetOfPrefix& nets); - ListOf2Ints *printCommunities(FilterOfCommunity& cm); - ListOf2Ints *printASPaths(FilterOfASPath& path); - -- inline void printCommunity(ostream &os, unsigned int i); -- int printCommunityList(ostream &os, ItemList *args); -- int printCommunitySet(ostream &os, CommunitySet *set, bool exact); -- void printActions(ostream &os, PolicyActionList *action); -+ inline void printCommunity(std::ostream &os, unsigned int i); -+ int printCommunityList(std::ostream &os, ItemList *args); -+ int printCommunitySet(std::ostream &os, CommunitySet *set, bool exact); -+ void printActions(std::ostream &os, PolicyActionList *action, ItemAFI *afi); - void printMartians(); -- int print(NormalExpression *ne, PolicyActionList *actn, int import_flag); -+ int print(NormalExpression *ne, PolicyActionList *actn, int import_flag, ItemAFI *afi); - int printDeclarations(NormalExpression *ne, PolicyActionList *actn, int import_flag); -- bool printNeighbor(int import, ASt asno, char *neighbor, -- bool peerGroup); -+ bool printNeighbor(int import, ASt asno, ASt peerAS, char *neighbor, -+ bool peerGroup, ItemAFI *peer_afi, ItemAFI *filter_afi); -+ void printAccessList(SetOfIPv6Prefix& nets) { -+ bool save = useAclCaches; -+ useAclCaches = false; -+ printRoutes(nets); -+ useAclCaches = save; -+ } - void printAccessList(SetOfPrefix& nets) { - bool save = useAclCaches; - useAclCaches = false; -@@ -131,13 +142,14 @@ private: - printASPaths(path); - useAclCaches = save; - } -- void printREASno(ostream& out, const RangeList &no); -- int printRE_(ostream& os, const regexp& r, bool &hasBOL, bool &hasEOL); -- int printRE(ostream& os, const regexp& r); -+ void printREASno(std::ostream& out, const RangeList &no); -+ int printRE_(std::ostream& os, const regexp& r, bool &hasBOL, bool &hasEOL); -+ int printRE(std::ostream& os, const regexp& r); - }; - - extern AccessListManager<regexp_nf> aspathMgr; - extern AccessListManager<SetOfPrefix> prefixMgr; -+extern AccessListManager<SetOfIPv6Prefix> ipv6prefixMgr; - extern AccessListManager<SetOfPrefix> pktFilterMgr; - extern AccessListManager<FilterOfCommunity> communityMgr; - diff --git a/net/irrtoolset-nox11/patches/patch-cb b/net/irrtoolset-nox11/patches/patch-cb deleted file mode 100644 index 33cb601b000..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cb +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-cb,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/util/debug.cc.orig 2002-04-09 13:48:49.000000000 +0200 -+++ src/util/debug.cc -@@ -108,7 +108,7 @@ void Abort() { - } - - void copy_constructor(char *p) { -- cerr << "Copy constructor called for " << p << "\n"; -+ std::cerr << "Copy constructor called for " << p << std::endl; - } - - #endif /* DEBUG */ diff --git a/net/irrtoolset-nox11/patches/patch-cf b/net/irrtoolset-nox11/patches/patch-cf deleted file mode 100644 index 636e7576a0c..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cf +++ /dev/null @@ -1,191 +0,0 @@ -$NetBSD: patch-cf,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/rpsl/rpsl/rpsl_attr.hh.orig 2004-07-30 12:58:15.000000000 +0200 -+++ src/rpsl/rpsl/rpsl_attr.hh -@@ -131,7 +131,7 @@ public: - return "Attr"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "(*** Need more work here ***)" << endl; -+ INDENT(indent); os << "(*** Need more work here ***)" << std::endl; - } - #endif // DEBUG - }; -@@ -311,7 +311,7 @@ public: - return "AttrAttr"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "_name = \"" << name() << "\"" << endl; -+ INDENT(indent); os << "_name = \"" << name() << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -370,7 +370,7 @@ public: - return "AttrClass"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "(*** Need more work here ***)" << endl; -+ INDENT(indent); os << "(*** Need more work here ***)" << std::endl; - } - #endif // DEBUG - }; -@@ -400,9 +400,9 @@ public: - return "AttrGeneric"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "type" << endl; -+ INDENT(indent); os << "type" << std::endl; - type->printClass(os, indent + 2); -- INDENT(indent); os << "items (" << items->className() << " *)" << endl; -+ INDENT(indent); os << "items (" << items->className() << " *)" << std::endl; - items->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -583,7 +583,7 @@ public: - return "AttrProtocol"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "name = \"" << name << "\"" << endl; -+ INDENT(indent); os << "name = \"" << name << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -620,19 +620,19 @@ public: - return "AttrImport"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "fromProt" << endl; -+ INDENT(indent); os << "fromProt" << std::endl; - if (fromProt) - fromProt->printClass(os, indent + 2); - else { -- INDENT(indent); os << " NULL" << endl; -+ INDENT(indent); os << " NULL" << std::endl; - } -- INDENT(indent); os << "intoProt" << endl; -+ INDENT(indent); os << "intoProt" << std::endl; - if (intoProt) - intoProt->printClass(os, indent + 2); - else { -- INDENT(indent); os << " NULL" << endl; -+ INDENT(indent); os << " NULL" << std::endl; - } -- INDENT(indent); os << "policy (" << policy->className() << " *)" << endl; -+ INDENT(indent); os << "policy (" << policy->className() << " *)" << std::endl; - policy->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -668,19 +668,19 @@ public: - return "AttrExport"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "fromProt" << endl; -+ INDENT(indent); os << "fromProt" << std::endl; - if (fromProt) - fromProt->printClass(os, indent + 2); - else { -- INDENT(indent); os << " NULL" << endl; -+ INDENT(indent); os << " NULL" << std::endl; - } -- INDENT(indent); os << "intoProt" << endl; -+ INDENT(indent); os << "intoProt" << std::endl; - if (intoProt) - intoProt->printClass(os, indent + 2); - else { -- INDENT(indent); os << " NULL" << endl; -+ INDENT(indent); os << " NULL" << std::endl; - } -- INDENT(indent); os << "policy (" << policy->className() << " *)" << endl; -+ INDENT(indent); os << "policy (" << policy->className() << " *)" << std::endl; - policy->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -725,11 +725,11 @@ public: - return "AttrDefault"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "peering (PolicyPeering *)" << endl; -+ INDENT(indent); os << "peering (PolicyPeering *)" << std::endl; - peering->printClass(os, indent + 2); -- INDENT(indent); os << "action (PolicyActionList *)" << endl; -+ INDENT(indent); os << "action (PolicyActionList *)" << std::endl; - action->printClass(os, indent + 2); -- INDENT(indent); os << "filter (Filter *)" << endl; -+ INDENT(indent); os << "filter (Filter *)" << std::endl; - filter->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -757,7 +757,7 @@ public: - return "AttrFilter"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "filter (Filter *)" << endl; -+ INDENT(indent); os << "filter (Filter *)" << std::endl; - filter->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -785,7 +785,7 @@ public: - return "AttrMPPeval"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "mp-peval (Filter *)" << endl; -+ INDENT(indent); os << "mp-peval (Filter *)" << std::endl; - filter->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -815,7 +815,7 @@ public: - return "AttrPeering"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "peering (PolicyPeering *)" << endl; -+ INDENT(indent); os << "peering (PolicyPeering *)" << std::endl; - peering->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -852,9 +852,9 @@ public: - // ??? This causes a lot of warning mesg right now - // It's hard to fix since it involves modification to - // hundred of places across the whole src tree -- // os << "ifaddr = " << ifaddr << endl; -+ // os << "ifaddr = " << ifaddr << std::endl; - os << "(*** Need to fix const declaration in the extraction operator ***)" -- << endl; -+ << std::endl; - } - #endif // DEBUG - }; -@@ -922,9 +922,9 @@ public: - // ??? This causes a lot of warning mesg right now - // It's hard to fix since it involves modification to - // hundred of places across the whole src tree -- // os << "ifaddr = " << ifaddr << endl; -+ // os << "ifaddr = " << ifaddr << std::endl; - os << "(*** Need to fix const declaration in the extraction operator ***)" -- << endl; -+ << std::endl; - } - #endif // DEBUG - }; -@@ -960,15 +960,15 @@ public: - } - virtual void printClass(std::ostream &os, int indent) const { - // For rp_attr -- INDENT(indent); os << "rp_attr" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -- INDENT(indent); os << " methods (RPMethod *)" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_attr" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; -+ INDENT(indent); os << " methods (RPMethod *)" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_method -- INDENT(indent); os << "rp_method" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_method" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_args -- INDENT(indent); os << "args (ItemList *)" << endl; -+ INDENT(indent); os << "args (ItemList *)" << std::endl; - args->printClass(os, indent + 2); - } - #endif // DEBUG diff --git a/net/irrtoolset-nox11/patches/patch-cg b/net/irrtoolset-nox11/patches/patch-cg deleted file mode 100644 index bf93ad7254c..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cg +++ /dev/null @@ -1,233 +0,0 @@ -$NetBSD: patch-cg,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/rpsl/rpsl/rpsl_filter.hh.orig 2005-08-25 12:41:52.000000000 +0200 -+++ src/rpsl/rpsl/rpsl_filter.hh -@@ -92,8 +92,8 @@ - virtual Filter* dup() const = 0; - #ifdef DEBUG - virtual const char *className(void) const = 0; -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "(*** Need more work here ***)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); print(os); os << std::endl; - } - #endif // DEBUG - }; -@@ -125,10 +125,10 @@ - virtual const char *className(void) const { - return "FilterOR"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "f1 (" << f1->className() << " *)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "f1 (" << f1->className() << " *)" << std::endl; - f1->printClass(os, indent + 2); -- INDENT(indent); os << "f2 (" << f2->className() << " *)" << endl; -+ INDENT(indent); os << "f2 (" << f2->className() << " *)" << std::endl; - f2->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -157,10 +157,10 @@ - virtual const char *className(void) const { - return "FilterAND"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "f1" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "f1" << std::endl; - f1->printClass(os, indent + 2); -- INDENT(indent); os << "f2" << endl; -+ INDENT(indent); os << "f2" << std::endl; - f2->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -186,8 +186,8 @@ - virtual const char *className(void) const { - return "FilterNOT"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "f1 (NOT)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "f1 (NOT)" << std::endl; - f1->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -216,10 +216,10 @@ - virtual const char *className(void) const { - return "FilterEXCEPT"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "f1" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "f1" << std::endl; - f1->printClass(os, indent + 2); -- INDENT(indent); os << "f2" << endl; -+ INDENT(indent); os << "f2" << std::endl; - f2->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -256,8 +256,8 @@ - virtual const char *className(void) const { - return "FilterMS"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "f1 (" << f1->className() << " *)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "f1 (" << f1->className() << " *)" << std::endl; - f1->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -279,8 +279,8 @@ - virtual const char *className(void) const { - return "FilterASNO"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "asno = " << asno << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "asno = " << asno << std::endl; - } - #endif // DEBUG - }; -@@ -301,8 +301,8 @@ - virtual const char *className(void) const { - return "FilterASNAME"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "asname = \"" << asname << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "asname = \"" << asname << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -323,8 +323,8 @@ - virtual const char *className(void) const { - return "FilterRSNAME"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "rsname = \"" << rsname << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "rsname = \"" << rsname << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -345,8 +345,8 @@ - virtual const char *className(void) const { - return "FilterRTRSNAME"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "rtrsname = \"" << rtrsname << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "rtrsname = \"" << rtrsname << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -368,7 +368,7 @@ - return "FilterFLTRNAME"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "fltrname = \"" << fltrname << "\"" << endl; -+ INDENT(indent); os << "fltrname = \"" << fltrname << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -386,8 +386,8 @@ - virtual const char *className(void) const { - return "FilterANY"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "ANY" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "ANY" << std::endl; - } - #endif // DEBUG - }; -@@ -405,8 +405,8 @@ - virtual const char *className(void) const { - return "FilterPeerAS"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "peerAS" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "peerAS" << std::endl; - } - #endif // DEBUG - }; -@@ -432,8 +432,8 @@ - virtual const char *className(void) const { - return "FilterASPath"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "re = ..." << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "re = ..." << std::endl; - } - #endif // DEBUG - }; -@@ -452,8 +452,8 @@ - virtual const char *className(void) const { - return "FilterPRFXList"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << *this << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << *this << std::endl; - } - #endif // DEBUG - }; -@@ -477,8 +477,8 @@ - virtual const char *className(void) const { - return "FilterMPPRFXList"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << *this << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); print(os); os << std::endl; - } - #endif // DEBUG - }; -@@ -516,8 +516,8 @@ - virtual const char *className(void) const { - return "FilterAFI"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << *this << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << *this << std::endl; - } - #endif // DEBUG - -@@ -554,17 +554,17 @@ - virtual const char *className(void) const { - return "FilterRPAttribute"; - } -- virtual void printClass(ostream &os, int indent) const { -+ virtual void printClass(std::ostream &os, int indent) const { - // For rp_attr -- INDENT(indent); os << "rp_attr" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -- INDENT(indent); os << " methods (RPMethod *)" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_attr" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; -+ INDENT(indent); os << " methods (RPMethod *)" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_method -- INDENT(indent); os << "rp_method" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_method" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_args -- INDENT(indent); os << "args (ItemList *)" << endl; -+ INDENT(indent); os << "args (ItemList *)" << std::endl; - args->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -722,7 +722,7 @@ - return "FilterRouterName"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "name = \"" << name << "\"" << endl; -+ INDENT(indent); os << "name = \"" << name << "\"" << std::endl; - } - #endif // DEBUG - }; diff --git a/net/irrtoolset-nox11/patches/patch-ch b/net/irrtoolset-nox11/patches/patch-ch deleted file mode 100644 index 27939c56041..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ch +++ /dev/null @@ -1,301 +0,0 @@ -$NetBSD: patch-ch,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/rpsl/rpsl/rpsl_item.hh.orig 2004-07-30 12:58:15.000000000 +0200 -+++ src/rpsl/rpsl/rpsl_item.hh -@@ -100,8 +100,8 @@ public: - virtual Buffer *bufferize(Buffer *buf = NULL, bool lcase = false) const = 0; - #ifdef DEBUG - virtual const char *className(void) const = 0; -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "(*** Need more work here ***)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "(*** Need more work here ***)" << std::endl; - } - #endif // DEBUG - }; -@@ -131,8 +131,8 @@ public: - virtual const char *className(void) const { - return "ItemASNO"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "asno = " << asno << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "asno = " << asno << std::endl; - } - #endif // DEBUG - }; -@@ -188,8 +188,8 @@ public: - virtual const char *className(void) const { - return "ItemFilter"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "filter = " << filter << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "filter = " << filter << std::endl; - } - #endif // DEBUG - }; -@@ -213,8 +213,8 @@ public: - virtual const char *className(void) const { - return "ItemINT"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "i = " << i << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "i = " << i << std::endl; - } - #endif // DEBUG - }; -@@ -238,8 +238,8 @@ public: - virtual const char *className(void) const { - return "ItemTimeStamp"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "stamp = " << stamp << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "stamp = " << stamp << std::endl; - } - #endif // DEBUG - }; -@@ -263,8 +263,8 @@ public: - virtual const char *className(void) const { - return "ItemREAL"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "real = " << real << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "real = " << real << std::endl; - } - #endif // DEBUG - }; -@@ -295,8 +295,8 @@ public: - virtual const char *className(void) const { - return "ItemSTRING"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "string = \"" << string << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "string = \"" << string << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -326,8 +326,8 @@ public: - virtual const char *className(void) const { - return "ItemBLOB"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "blob = \"" << blob << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "blob = \"" << blob << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -358,8 +358,8 @@ public: - virtual const char *className(void) const { - return "ItemBUFFER"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "buffer = \"" << buffer << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "buffer = \"" << buffer << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -391,7 +391,7 @@ public: - return "ItemIPV4"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "ipv4 = \"" << *ipv4 << "\"" << endl; -+ INDENT(indent); os << "ipv4 = \"" << *ipv4 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -424,8 +424,8 @@ public: - virtual const char *className(void) const { - return "ItemPRFXV4"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "prfxv4 = \"" << *prfxv4 << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "prfxv4 = \"" << *prfxv4 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -460,8 +460,8 @@ public: - virtual const char *className(void) const { - return "ItemPRFXV4Range"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "prfxv4 = \"" << *prfxv4 << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "prfxv4 = \"" << *prfxv4 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -493,8 +493,8 @@ public: - virtual const char *className(void) const { - return "ItemIPV6"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "ipv6 = \"" << *ipv6 << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "ipv6 = \"" << *ipv6 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -526,8 +526,8 @@ public: - virtual const char *className(void) const { - return "ItemPRFXV6"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "prfxv6 = \"" << *prfxv6 << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "prfxv6 = \"" << *prfxv6 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -563,8 +563,8 @@ public: - virtual const char *className(void) const { - return "ItemPRFXV6Range"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "prfxrangev6 = \"" << *prfxv6 << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "prfxrangev6 = \"" << *prfxv6 << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -596,8 +596,8 @@ public: - virtual const char *className(void) const { - return "ItemAFI"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "afi = \"" << *afi << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "afi = \"" << *afi << "\"" << std::endl; - } - #endif // DEBUG - int operator==(ItemAFI &af) { -@@ -642,10 +642,10 @@ public: - virtual const char *className(void) const { - return "ItemConnection"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "ip = \"" << *ip << "\"" << endl; -- INDENT(indent); os << "host = \"" << host << "\"" << endl; -- INDENT(indent); os << "port = \"" << port << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "ip = \"" << *ip << "\"" << std::endl; -+ INDENT(indent); os << "host = \"" << host << "\"" << std::endl; -+ INDENT(indent); os << "port = \"" << port << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -667,8 +667,8 @@ public: - virtual const char *className(void) const { - return "ItemSID"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "name (SymID) = \"" << name << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "name (SymID) = \"" << name << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -718,8 +718,8 @@ public: - virtual const char *className(void) const { - return "ItemBOOLEAN"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "i = " << i << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "i = " << i << std::endl; - } - #endif // DEBUG - }; -@@ -754,8 +754,8 @@ public: - virtual const char *className(void) const { - return "ItemWORD"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "word = \"" << word << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "word = \"" << word << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -782,8 +782,8 @@ public: - virtual const char *className(void) const { - return "ItemEMAIL"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "email = \"" << email << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "email = \"" << email << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -805,7 +805,7 @@ public: - virtual const char *className(void) const { - return "ItemFREETEXT"; - } -- virtual void printClass(ostream &os, int indent) const { -+ virtual void printClass(std::ostream &os, int indent) const { - INDENT(indent); os << "\""; - #define DISPLAYFREETEXTLENGTH 63 - if (length > DISPLAYFREETEXTLENGTH) { -@@ -813,7 +813,7 @@ public: - strncpy(buf, text, DISPLAYFREETEXTLENGTH - 3); - buf[DISPLAYFREETEXTLENGTH - 3] = 0; - strcat(buf, "..."); -- os << buf << endl; -+ os << buf << std::endl; - } else { - for (int i = 0; i < length; i++) { - char ch = *(text + i); -@@ -823,7 +823,7 @@ public: - os << ch; - } - } -- os << "\"" << endl; -+ os << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -902,9 +902,9 @@ public: - virtual const char *className(void) const { - return "ItemList"; - } -- virtual void printClass(ostream &os, int indent) const { -+ virtual void printClass(std::ostream &os, int indent) const { - for (Item *item = head(); item; item = next(item)) { -- INDENT(indent); os << item->className() << endl; -+ INDENT(indent); os << item->className() << std::endl; - item->printClass(os, indent + 2); - } - } -@@ -935,9 +935,9 @@ public: - virtual const char *className(void) const { - return "ItemRange"; - } -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "begin = \"" << "\"" << endl; -- INDENT(indent); os << "end = \"" << "\"" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "begin = \"" << "\"" << std::endl; -+ INDENT(indent); os << "end = \"" << "\"" << std::endl; - } - #endif // DEBUG - }; -@@ -968,9 +968,9 @@ public: - virtual const char *className(void) const { - return "ItemSequence"; - } -- virtual void printClass(ostream &os, int indent) const { -+ virtual void printClass(std::ostream &os, int indent) const { - for (Item *item = head(); item; item = next(item)) { -- INDENT(indent); os << item->className() << endl; -+ INDENT(indent); os << item->className() << std::endl; - item->printClass(os, indent + 2); - } - } diff --git a/net/irrtoolset-nox11/patches/patch-ci b/net/irrtoolset-nox11/patches/patch-ci deleted file mode 100644 index 95a0912aa90..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ci +++ /dev/null @@ -1,91 +0,0 @@ -$NetBSD: patch-ci,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/rpsl/rpsl/rpsl_policy.hh.orig 2004-07-30 12:58:15.000000000 +0200 -+++ src/rpsl/rpsl/rpsl_policy.hh -@@ -91,8 +91,8 @@ public: - - #ifdef DEBUG - virtual const char *className(void) const = 0; -- virtual void printClass(ostream &os, int indent) const { -- INDENT(indent); os << "(*** Need more work here ***)" << endl; -+ virtual void printClass(std::ostream &os, int indent) const { -+ INDENT(indent); os << "(*** Need more work here ***)" << std::endl; - } - #endif // DEBUG - }; -@@ -170,15 +170,15 @@ public: - } - virtual void printClass(std::ostream &os, int indent) const { - // For rp_attr -- INDENT(indent); os << "rp_attr" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -- INDENT(indent); os << " methods (RPMethod *)" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_attr" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; -+ INDENT(indent); os << " methods (RPMethod *)" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_method -- INDENT(indent); os << "rp_method" << endl; -- INDENT(indent); os << " _name = \"" << "\"" << endl; -+ INDENT(indent); os << "rp_method" << std::endl; -+ INDENT(indent); os << " _name = \"" << "\"" << std::endl; - // For rp_args -- INDENT(indent); os << "args (ItemList *)" << endl; -+ INDENT(indent); os << "args (ItemList *)" << std::endl; - args->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -231,9 +231,9 @@ public: - return "PolicyPeeringAction"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "peering (PolicyPeering *)" << endl; -+ INDENT(indent); os << "peering (PolicyPeering *)" << std::endl; - peering->printClass(os, indent + 2); -- INDENT(indent); os << "action (PolicyActionList *)" << endl; -+ INDENT(indent); os << "action (PolicyActionList *)" << std::endl; - action->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -265,14 +265,14 @@ public: - } - virtual void printClass(std::ostream &os, int indent) const { - // Action -- INDENT(indent); os << "peeringActionList" << endl; -+ INDENT(indent); os << "peeringActionList" << std::endl; - for (PolicyPeeringAction *pc = peeringActionList->head(); - pc; - pc = peeringActionList->next(pc)) { - pc->printClass(os, indent + 2); - } - // Filter -- INDENT(indent); os << "filter (Filter *)" << endl; -+ INDENT(indent); os << "filter (Filter *)" << std::endl; - filter->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -327,9 +327,9 @@ public: - return "PolicyRefine"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "left" << endl; -+ INDENT(indent); os << "left" << std::endl; - left->printClass(os, indent + 2); -- INDENT(indent); os << "right" << endl; -+ INDENT(indent); os << "right" << std::endl; - right->printClass(os, indent + 2); - } - #endif // DEBUG -@@ -358,9 +358,9 @@ public: - return "PolicyExcept"; - } - virtual void printClass(std::ostream &os, int indent) const { -- INDENT(indent); os << "left" << endl; -+ INDENT(indent); os << "left" << std::endl; - left->printClass(os, indent + 2); -- INDENT(indent); os << "right" << endl; -+ INDENT(indent); os << "right" << std::endl; - right->printClass(os, indent + 2); - } - #endif // DEBUG diff --git a/net/irrtoolset-nox11/patches/patch-cj b/net/irrtoolset-nox11/patches/patch-cj deleted file mode 100644 index 92265c85f9b..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cj +++ /dev/null @@ -1,50 +0,0 @@ -$NetBSD: patch-cj,v 1.1 2005/08/26 08:41:46 spz Exp $ - ---- src/rpslcheck/rpslcheck.cc.orig 2004-07-30 12:58:15.000000000 +0200 -+++ src/rpslcheck/rpslcheck.cc -@@ -129,12 +129,12 @@ void init_and_set_options (int argc, cha - IRR::handleEnvironmentVariables(envp); - - if (ParseArgv(&argc, argv, argTable, ARGV_NO_LEFTOVERS) != ARGV_OK) { -- cerr << endl; -+ std::cerr << std::endl; - exit(1); - } - - if (! (irr = IRR::newClient())) { -- cerr << "Unknown protocol!" << endl; -+ std::cerr << "Unknown protocol!" << std::endl; - exit(1); - } - -@@ -166,7 +166,7 @@ main(int argc, char **argv, char **envp) - myAS = atoi(opt_my_as + 2); - const AutNum *autnum = irr->getAutNum(myAS); - if (!autnum) { -- cerr << "Error: no object for AS " << myAS << endl; -+ std::cerr << "Error: no object for AS " << myAS << std::endl; - exit(1); - } - o = new Object((Object &) *autnum); -@@ -180,10 +180,10 @@ main(int argc, char **argv, char **envp) - } - - if (opt_echo && code) -- cout << *o; -+ std::cout << *o; - - if (!o->has_error && code) -- cout << "Congratulations no errors were found" << endl; -+ std::cout << "Congratulations no errors were found" << std::endl; - - delete o; - -@@ -197,7 +197,7 @@ main(int argc, char **argv, char **envp) - schema.printClassStats(); - - if (opt_prompt) -- cout << endl; -+ std::cout << std::endl; - - if (opt_rusage) - clog << ru; diff --git a/net/irrtoolset-nox11/patches/patch-ck b/net/irrtoolset-nox11/patches/patch-ck deleted file mode 100644 index f4ee93deedd..00000000000 --- a/net/irrtoolset-nox11/patches/patch-ck +++ /dev/null @@ -1,28 +0,0 @@ -$NetBSD: patch-ck,v 1.1 2006/02/15 20:07:40 spz Exp $ - ---- src/irr/birdwhoisc.cc.orig 2004-07-30 12:58:11.000000000 +0200 -+++ src/irr/birdwhoisc.cc -@@ -112,10 +112,13 @@ static void stripRipeComments(Buffer &bu - if (eol == NULL) - // no EOL, no comment to strip (yet) - goto out; -- assert(*(eol+1) == '\n' || *(eol+1) == '%'); - size -= (eol-cont)+1; - cont = eol + 1; - removedLines = true; -+ if (*(cont) != '\n' && *(cont) != '%') -+ // next line starts not with a comment, so assume comments have -+ // ended the APNIC way -+ goto out; - } - if (*cont == '\n') { - size--; -@@ -197,6 +200,8 @@ bool BirdWhoisClient::getResponse(char * - << "]" - << endl; - -+ text = result->contents; -+ len = result->size; - return true; - } - diff --git a/net/irrtoolset-nox11/patches/patch-cl b/net/irrtoolset-nox11/patches/patch-cl deleted file mode 100644 index 0e5b00b2264..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cl +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-cl,v 1.1 2006/03/22 22:36:13 joerg Exp $ - ---- src/Core/configure.orig 2006-03-22 22:27:49.000000000 +0000 -+++ src/Core/configure -@@ -1362,6 +1362,12 @@ _ACEOF - bsdi* ) - EXTRA_LIBS="-lipc" - ;; -+ dragonfly*) -+ cat >>confdefs.h <<\_ACEOF -+#define HOST_OS_IS_FREEBSD 1 -+_ACEOF -+ ;; -+ - freebsd* ) - EXTRA_INCLUDE_DIRS="-I/usr/local/lib/g++-include" - cat >>confdefs.h <<\_ACEOF diff --git a/net/irrtoolset-nox11/patches/patch-cm b/net/irrtoolset-nox11/patches/patch-cm deleted file mode 100644 index 3d336c11016..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cm +++ /dev/null @@ -1,50 +0,0 @@ -$NetBSD: patch-cm,v 1.1 2006/07/07 12:30:56 spz Exp $ - ---- src/rpsl/rpsl/prefix.cc.orig 2004-07-30 12:58:14.000000000 +0200 -+++ src/rpsl/rpsl/prefix.cc -@@ -1216,10 +1216,13 @@ void MPPrefixRanges::except(MPPrefixRang - assign(result.begin(), result.end()); - } - -+// contains methods rewritten by spz according to hint from Hagen Boehm - bool MPPrefixRanges::contains(IPAddr ip) const { - MPPrefixRanges::const_iterator p; - for (p = begin(); p != end(); ++p) { -- if (p->ipv4 && (p->ipv4->get_ipaddr() == ip.get_ipaddr())) -+ if (p->ipv4 -+ && p->ipv4->get_ipaddr() == ip.get_ipaddr() -+ && p->ipv4->get_length() == ip.get_length() ) - return true; - } - return false; -@@ -1228,7 +1231,9 @@ bool MPPrefixRanges::contains(IPAddr ip) - bool MPPrefixRanges::contains(IPv6Addr ip) const { - MPPrefixRanges::const_iterator p; - for (p = begin(); p != end(); ++p) { -- if (p->ipv6 && (*(p->ipv6->get_ipaddr()) == *(ip.get_ipaddr())) ) -+ if (p->ipv6 -+ && p->ipv6->get_ipaddr() == ip.get_ipaddr() -+ && p->ipv6->get_length() == ip.get_length() ) - return true; - } - return false; -@@ -1237,9 +1242,17 @@ bool MPPrefixRanges::contains(IPv6Addr i - bool MPPrefixRanges::contains(MPPrefix ip) const { - MPPrefixRanges::const_iterator p; - for (p = begin(); p != end(); ++p) { -- if (p->ipv6 && ip.ipv6 && (*(p->ipv6->get_ipaddr()) == ip.get_ipaddr()) ) -+ if (p->ipv6 && ip.ipv6 -+ && p->ipv6->get_ipaddr() == ip.ipv6->get_ipaddr() -+ && p->ipv6->get_length() == ip.ipv6->get_length() -+ && p->ipv6->get_m() == ip.ipv6->get_m() -+ && p->ipv6->get_n() == ip.ipv6->get_n() ) - return true; -- if (p->ipv4 && ip.ipv4 && (p->ipv4->get_ipaddr() == ip.ipv4->get_ipaddr())) -+ if (p->ipv4 && ip.ipv4 -+ && p->ipv4->get_ipaddr() == ip.ipv4->get_ipaddr() -+ && p->ipv4->get_length() == ip.ipv4->get_length() -+ && p->ipv4->get_m() == ip.ipv4->get_m() -+ && p->ipv4->get_n() == ip.ipv4->get_n() ) - return true; - } - return false; diff --git a/net/irrtoolset-nox11/patches/patch-cn b/net/irrtoolset-nox11/patches/patch-cn deleted file mode 100644 index c37a0fa2f7e..00000000000 --- a/net/irrtoolset-nox11/patches/patch-cn +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-cn,v 1.1 2006/07/07 12:30:56 spz Exp $ - ---- src/normalform/RadixSet.cc.orig 2004-07-30 12:58:13.000000000 +0200 -+++ src/normalform/RadixSet.cc -@@ -878,7 +878,7 @@ ostream& operator<<(ostream& o, const Ra - need_comma = true; - o << int2quad(buffer, addr) << "/" << leng << "^" << n << "-" << m; - } // end of for loop -- } else { // not a compressed point -+ } else { // not a compressed print - RadixSet::PrefixIterator itr(&set); - for (bool flag = itr.first(addr, leng); flag; flag = itr.next(addr, leng)) { - if (need_comma) diff --git a/net/irrtoolset-nox11/patches/patch-co b/net/irrtoolset-nox11/patches/patch-co new file mode 100644 index 00000000000..821e0a393f4 --- /dev/null +++ b/net/irrtoolset-nox11/patches/patch-co @@ -0,0 +1,25 @@ +$NetBSD: patch-co,v 1.1 2007/05/22 12:17:56 spz Exp $ + +--- ./src/gnug++/int.defs.h.orig 2007-02-09 22:30:25.000000000 +0100 ++++ ./src/gnug++/int.defs.h +@@ -56,10 +56,15 @@ Foundation, 675 Mass Ave, Cambridge, MA + #define HASHTABLE_TOO_CROWDED(COUNT, SIZE) ((SIZE) - ((SIZE) >> 3) <= (COUNT)) + + // Allow portable address arithmetic +-#if __WORDSIZE == 64 +-typedef uint64_t addr_t; +-#else +-typedef uint32_t addr_t; +-#endif ++//#if __WORDSIZE == 64 ++//typedef uint64_t addr_t; ++//#else ++//typedef uint32_t addr_t; ++//#endif ++ ++// the previous might work if __WORDSIZE was portably defined. It's not. ++// also, since all it ever gets used to is pointer arithmetic, char* is ++// what is ought to be (and its name ought to be caddr_t really) ++typedef char* addr_t; + + #endif diff --git a/net/irrtoolset-nox11/patches/patch-cp b/net/irrtoolset-nox11/patches/patch-cp new file mode 100644 index 00000000000..6aae23fdd67 --- /dev/null +++ b/net/irrtoolset-nox11/patches/patch-cp @@ -0,0 +1,22 @@ +$NetBSD: patch-cp,v 1.1 2007/05/22 12:17:57 spz Exp $ + +--- ./src/rpsl/rpsl/prefix.cc.orig 2007-02-09 20:46:31.000000000 +0100 ++++ ./src/rpsl/rpsl/prefix.cc +@@ -278,7 +278,7 @@ bool PrefixRange::makeMoreSpecific(int c + default: // ^n-m + if (_m < n || _m < n) + return false; +- n = (_n >? n); ++ n = (_n > n) ? _n : n; + m = _m; + } + +@@ -705,7 +705,7 @@ bool IPv6PrefixRange::makeMoreSpecific(i + default: // ^n-m + if (_m < n || _m < n) + return false; +- n = (_n >? n); ++ n = (_n > n) ? _n : n; + m = _m; + } + diff --git a/net/irrtoolset-nox11/patches/patch-cq b/net/irrtoolset-nox11/patches/patch-cq new file mode 100644 index 00000000000..eb33f85950e --- /dev/null +++ b/net/irrtoolset-nox11/patches/patch-cq @@ -0,0 +1,12 @@ +$NetBSD: patch-cq,v 1.1 2007/05/22 12:17:59 spz Exp $ + +--- ./src/Core/util/strerror.c.orig 2006-06-08 17:16:26.000000000 +0200 ++++ ./src/Core/util/strerror.c +@@ -34,6 +34,7 @@ + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ + ++#include <stdio.h> + #include <string.h> + #include <errno.h> + diff --git a/net/irrtoolset-nox11/patches/patch-cr b/net/irrtoolset-nox11/patches/patch-cr new file mode 100644 index 00000000000..b7b84552a01 --- /dev/null +++ b/net/irrtoolset-nox11/patches/patch-cr @@ -0,0 +1,21 @@ +$NetBSD: patch-cr,v 1.1 2007/05/22 12:17:59 spz Exp $ + +--- src/re2dfa/re2dfa.c.orig 2006-06-08 17:16:26.000000000 +0200 ++++ src/re2dfa/re2dfa.c +@@ -37,6 +37,7 @@ + + #include "config.h" + #include <stdio.h> ++#include <strings.h> + #include <sys/types.h> + #include <stdlib.h> + #ifdef HAVE_MALLOC_H +@@ -171,7 +172,7 @@ typedef struct _rd_dq rd_rhead; /* Ditt + + #define RD_ALLOC_RANGE(r) { \ + (r) = (rd_range *) malloc(sizeof (rd_range)); \ +- bzero((caddr_t) (r), sizeof (rd_range)); \ ++ bzero((void *) (r), sizeof (rd_range)); \ + RDQ_INIT(&(r)->ra_arcs, (r)); \ + } + diff --git a/net/irrtoolset-nox11/patches/patch-cs b/net/irrtoolset-nox11/patches/patch-cs new file mode 100644 index 00000000000..a1fb5b132fb --- /dev/null +++ b/net/irrtoolset-nox11/patches/patch-cs @@ -0,0 +1,14 @@ +$NetBSD: patch-cs,v 1.1 2007/05/22 12:18:01 spz Exp $ + +--- ./src/RtConfig/f_cisco.cc.orig 2007-01-23 01:45:16.000000000 +0100 ++++ ./src/RtConfig/f_cisco.cc +@@ -777,7 +777,8 @@ void CiscoConfig::printRE(ostream &s, + s << out.str(); + cerr << "Warning: ip as-path access-list is too long for cisco to handle" << endl; + } else { +- int inc = hasTilda ? 1 : (240 - lineLen + size) >? 5; ++ int inc = hasTilda ? 1 : ++ ( ( (240 - lineLen + size) > 5 ) ? (240 - lineLen + size) : 5 ); + p = strdup(out.str().c_str()); + q = strchr(r, ')') + 1; + *r = 0; |