Subject: Re: [dtn-users] Error message during make
From: "방영철 (Youngchul Bang)" <[email-masked]>
To: "EunKyung Lee" <[email-masked]>
Cc: [email-masked]
Date: Wed, 30 Apr 2008 22:23:03 +0900
List-Id: dtn-users mailing list <dtn-users.mailman.dtnrg.org>

Which version of gcc did you use?  I've compiled the DTN 2.5.0 with gcc 4.1.3.

If using gcc 4.2.3, option "-Wno-long-double" is added to CPPFLAGS and
OASYS_CPPFLAGS, which causes the compile error.

2008/4/24 EunKyung Lee <[email-masked]>:
> Can anybody solve this compile problem?
> I cannot install DTN 2.5.0 because of the error below:
>
> debug/FatalSignals.cc: In static member function ?tatic void
> oasys::FatalSignals::handler(int)?
> debug/FatalSignals.cc:69: warning: deprecated conversion from string
> constant to ?har*?
> debug/FatalSignals.cc:73: warning: deprecated conversion from string
> constant to ?har*?
>  debug/FatalSignals.cc:74: warning: deprecated conversion from string
> constant to ?har*?
> debug/FatalSignals.cc:75: warning: deprecated conversion from string
> constant to ?har*?
> debug/FatalSignals.cc:76: warning: deprecated conversion from string
> constant to ?har*?
>  debug/FatalSignals.cc:77: warning: deprecated conversion from string
> constant to ?har*?
> debug/FatalSignals.cc:78: warning: deprecated conversion from string
> constant to ?har*?
> At global scope:
> cc1plus: error: unrecognized command line option "-Wno-long-double"
>  make[1]: *** [debug/FatalSignals.o] Error 1
> make[1]: Leaving directory `/root/dtn-2.5.0/oasys'
> make: *** [oasys] Error 2
>
> Any suggestion or comment will be very appreciated. :)
> _______________________________________________
>  dtn-users mailing list
>  [email-masked]
>  http://maillists.intel-research.net/mailman/listinfo/dtn-users
>
>

Date: Mon, 28 Apr 2008 16:53:12 +0900
From: "=?UTF-8?Q?=EB=B0=A9=EC=98=81=EC=B2=A0_(Youngchul_Bang)?=" <[email-masked]>
To: [email-masked]
Subject: [dtn-users] Scheduled links and dtnsim

Hi,

I want to turn on and off the radio such as 802.11 according to
scheduled future contact information.  Is there a reference related to
that?

I know that no support for scheduled links is yet implemented in
version 2.5.0 of the DTN2 reference implementation.  Before
implementing scheduled links, I want to know configuration and
features of other types of links, such as always on, on demand, and
opportunistic links, via simulation with dtnsim included with the
reference implementation.  How can I do that?  Is there a manual or
document about the dtnsim?

Regards,
Youngchul

Date: Wed, 23 Apr 2008 14:09:58 -0400
From: "EunKyung Lee" <[email-masked]>
To: [email-masked]
Subject: [dtn-users] Error message during make

------=_Part_29004_26019882.1208974198823
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Can anybody solve this compile problem?
I cannot install DTN 2.5.0 because of the error below:

debug/FatalSignals.cc: In static member function ?tatic void
oasys::FatalSignals::handler(int)?
debug/FatalSignals.cc:69: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:73: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:74: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:75: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:76: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:77: warning: deprecated conversion from string
constant to ?har*?
debug/FatalSignals.cc:78: warning: deprecated conversion from string
constant to ?har*?
At global scope:
cc1plus: error: unrecognized command line option "-Wno-long-double"
make[1]: *** [debug/FatalSignals.o] Error 1
make[1]: Leaving directory `/root/dtn-2.5.0/oasys'
make: *** [oasys] Error 2
Any suggestion or comment will be very appreciated. :)

------=_Part_29004_26019882.1208974198823
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

<div>Can anybody solve this compile problem?</div>
<div>I cannot install DTN 2.5.0 because of the error below:</div>
<div>&nbsp;</div>
<div>debug/FatalSignals.cc: In static member function ?tatic void oasys::FatalSignals::handler(int)?<br>debug/FatalSignals.cc:69: warning: deprecated conversion from string constant to ?har*?<br>debug/FatalSignals.cc:73: warning: deprecated conversion from string constant to ?har*?<br>
debug/FatalSignals.cc:74: warning: deprecated conversion from string constant to ?har*?<br>debug/FatalSignals.cc:75: warning: deprecated conversion from string constant to ?har*?<br>debug/FatalSignals.cc:76: warning: deprecated conversion from string constant to ?har*?<br>
debug/FatalSignals.cc:77: warning: deprecated conversion from string constant to ?har*?<br>debug/FatalSignals.cc:78: warning: deprecated conversion from string constant to ?har*?<br>At global scope:<br>cc1plus: error: unrecognized command line option &quot;-Wno-long-double&quot;<br>
make[1]: *** [debug/FatalSignals.o] Error 1<br>make[1]: Leaving directory `/root/dtn-2.5.0/oasys&#39;<br>make: *** [oasys] Error 2<br></div>
<div>Any suggestion or comment will be very appreciated. :)</div>

------=_Part_29004_26019882.1208974198823--

From: "Ruhai Wang" <[email-masked]>
To: <[email-masked]>
Date: Tue, 22 Apr 2008 12:02:28 -0600
Subject: [dtn-users] CFP: International Workshop on Satellite and Space Communications 2008 (IWSSC 2008), Toulouse, France

*******   My apologizes if you receive multiple copies of this email message
********
----------------------------------------------------------------------------
--------------
Dear Colleagues,

I am very pleased to remind you that the deadline for submissions (extended
abstracts or full papers) to the International Workshop on Satellite and
Space Communications 2008 (IWSSC 2008), organized by Prof. Michel Bousquet
in Toulouse (ISAE premises), France, October 1-3, 2008 (Web site
http://www.tesa.prd.fr/iwssc08/) has been extended to April 28, 2008 (hard,
final deadline).

For submission instructions, please follow the guidelines at:
http://www.tesa.prd.fr/iwssc08/submissions.html

IWSSC 2008 is technically endorsed by the IEEE Communication Society (SSC
and TCPC Committees). Published papers will also appear on IEEE Xplore.  I
also take this opportunity to let you know that Dr. Anton Donner (DLR) has
already organized very interesting tutorials for Oct. 1st afternoon: 
- Fernando Perez-Fontan: "Characterization and modelling of the LMS channel"
- Bernhard Collini-Nocker: "Encapsulation matters: from MPE over ULE to GSE"
- Lloyd Wood: "Satellite Constellation Networks Part 1"
- Markus Werner: "Satellite Constellation Networks Part 2".

The access to tutorials is free.

Please take a look at the call for papers at the end of this email.

Thanks a lot.

Looking forward to hearing from you,

Sincerely,

Giovanni
on behalf of the IWSSC 2008 Organization Team

--------------------------------------------------------------------

CALL FOR PAPERS

2008 International Workshop on Satellite and Space Communications
(IWSSC 2008)
1st-3rd October 2008, ISAE/SUPAERO, Toulouse, France
http://www.tesa.prd.fr/iwssc08/

---------------------------------------------------------------------

The objective of this workshop is to provide a forum for researchers and
technologists to present new ideas and contributions in the form of
technical papers, panel discussions and tutorials of ideas in the field of
satellite communications. It is intended to bring together various satellite
communication systems developers to discuss the current status, technical
challenges, standards, fundamental issues, and future services and
applications. IWSSC 2008 seeks to address and capture highly innovative and
state of the art research from the satellite communications industry. The
scope of the workshop includes a wide range of technical challenges in view
of the growing interest for satellite networks, multi-media and broadband
access to satellite communication systems, the evolution of future satellite
communications with access across hybrid platforms, the direct mobile access
to satellites, the use of fade countermeasures and the integration with
radio resource management. 

IWSSC 2008 is technically supported by IEEE Communications Society. 
It is endorsed by IEEE SSC and co-endorsed by IEEE TCPC.

Published papers will appear on IEEExplore.

Important Dates:
Submission deadline: April 28, 2008 (Extended)
Notification of acceptance: June 16, 2008
Submission of camera-ready versions of accepted papers: July 15, 2008

Topics of interest include but are not limited to the following:

- Standards Status (e.g., ITU, ETSI)
- Hybrid Satellite and Terrestrial Networks
- Navigation Services 
- Reliable Multicast Protocols
- Transport Protocol Performance over Satellite
- IP over Satellite and QoS support
- Network Management & Control issues
- Onboard Switching and Processing Technologies
- Delay tolerant networking
- Radio Resource Management
- Fade Countermeasures
- Cross-layer Air Interface Design
- Call Admission Control Schemes
- Dynamic Bandwidth Allocation
- Advances in Modulation and Coding
- Advances in Antenna Technology
- Channel Models
- Security Aspects and Issues
- Forward and Return Link Encapsulation

General Chair:
Giovanni Giambene, University of Siena, Italy
General Co-Chair and Finance Chair:
Michel Bousquet, ISAE/SUPAERO, Toulouse, France
General Vice-Chair
Boon Sain Yeo, SensiMesh Pte Ltd, Singapore

Technical  Program Chair:
Laurent Castanet, ONERA, Toulouse, France
Technical  Program Co-Chairs:
Sooyoung Kim, Chonbuk National University, Korea
Ruhai Wang, Lamar University, Texas

Panel Chair:
Sandro Scalise, DLR, Germany

Publicity Chair:
Sastri Kota, Harris Corp., USA

Publication Chair and co-Chair
Paolo Chini, University of Siena, Italy
Thierry Gayraud, LAAS, Toulouse, France

Steering Committee:
Michel Bousquet, ISAE/SUPAERO, Toulouse, France
Bernhard Collini-Nocker, University of Salzburg, Austria
Erina Ferro, ISTI-CNR, Pisa, Italy
Giovanni Giambene, University of Siena, Italy
Otto Koudelka, Technical University Graz, Austria
Jose' Ignacio Moreno, Universidad Carlos III de Madrid, Spain
Francisco Javier Gonzalez Castano, Universidad de Vigo, Spain
Sastri Kota, Harris Corp., USA
William W. Wu, Advanced Technology Mechanization, USA 
Boon Sain Yeo, Wavex Technologies Pte Ltd, Singapore

Local Organizing Committee:
Michel Bousquet, ISAE/SUPAERO, Toulouse, France
Laurent Castanet, ONERA, Toulouse, France
David Bonacci, TeSA, Toulouse, France
Julien Roustan, TeSA, Toulouse, France

Conference Secretariat: 
Sarah Gueguen, TeSA, 14-16 Port Saint Etienne, 31000 Toulouse  
(Tel: +33 561 24 7360, email: [email-masked] )

Paper Submission Guidelines:
Acceptance will be based on an extended abstract or a full paper. In case of
an extended abstract submission, diagrams, results, and bibliography have to
be provided to allow the reviewers to assess the contribution of your work.
In addition to the paper submission, an abstract (approx. 150 words) shall
be submitted. The submission has to be performed  electronically by April
28, 2008; look at the instruction on the conference web site:
http://www.tesa.prd.fr/iwssc08/. 
EDAS system will be used. For information, please send email to:
[email-masked] 

***Special sessions will be made available for young researchers to provide
them with the opportunity to present their activities. ***

Special Sessions & Tutorials:
Proposals for Special Sessions and Tutorials are also being solicited.
Special Sessions are about 90 minutes long. They focus on advanced topics in
particular areas of interest to the attendees of IWSSC 2008. Tutorials
(half-day or full-day sessions) are intended to provide in-depth learning on
a specific topic of interest to the participants. Proposals for Special
Sessions and Tutorials should consist of a 1000 words summary, a 150 words
abstract, and a cover page listing the details of the author(s) as given
above. Please submit your proposal to the Special Session Chair Thierry
Gayraud ([email-masked]) and to the Tutorial Chair Anton Donner
([email-masked]) until February 1, 2008.

Exhibitions:
Exhibitions of company products are solicited for the Technical Subject
Areas. Interested parties should contact the Local Organizing Committee by
e-mail until June 2, 2008. 
******************************************************************
Ruhai Wang, Ph.D.
Associate Professor
Drayer Department of Electrical Engineering 
Lamar University
P.O. Box 10029
Beaumont, Texas 77710
******************************************************************
Phone:(409) 880-1829
Fax:    (409) 880-1821
Email:  [email-masked]

Date: Tue, 15 Apr 2008 09:38:13 +0100
From: Karol Kowalik <[email-masked]>
To: Michael Demmer <[email-masked]>
Cc: [email-masked]
Subject: Re: [dtn-users] compiling DTN2 with gcc32

Hello Michael,

Thanks for your help. It compiles fine now.

Thanks
Karol

Michael Demmer wrote:
> 
> I've fixed this problem in the mercurial repository:
> 
>    http://www.dtnrg.org/hg/DTN2/rev/9d3acc74fd07a
> 
> You should be able to either apply the given patch to your code or 
> update to the version at the tip of the repository.
> 
> -mike
> 
> On Apr 14, 2008, at 4:20 AM, Karol Kowalik wrote:
>> Hello,
>>
>> I'm trying to compile DTN2 with gcc32 and g++32 (gcc version 3.2.3
>> 20030502 (Red Hat Linux 3.2.3-47.fc4)). However, I get many errors
>> (attached below). Do you know if there is an easy fix for this?
>>
>> Thanks
>> Karol
>>
>>
>>
>> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
>> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
>> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
>> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
>> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
>> In file included from routing/MultiGraph.h:237,
>>                  from routing/DTLSRRouter.h:25,
>>                  from routing/DTLSRRouter.cc:24:
>> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_node(const
>>    std::basic_string<char, std::char_traits<char>, std::allocator<char>
>>> &)'
>>    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
>> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_node(const
>>    std::string&) const
>> routing/MultiGraph.tcc:54: template definition of non-template `
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node* 
>> dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::find_node(const std::basic_string<char,
>> std::char_traits<char>,
>>    std::allocator<char> >&)'
>> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_edge(const
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&) [with
>>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>>    dtn::DTLSRRouter::EdgeInfo]':
>> routing/DTLSRRouter.cc:304:   instantiated from here
>> routing/MultiGraph.tcc:115: no match for 
>> `__gnu_cxx::__normal_iterator<const
>>    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo> >& =
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>> [root@escher dtn-2.5.0]# more log
>> make -w -C oasys
>> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/oasys'
>> make[1]: Nothing to be done for `all'.
>> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/oasys'
>> make -w -C applib
>> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/applib'
>> make[1]: Nothing to be done for `all'.
>> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/applib'
>> make -w -C servlib
>> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/servlib'
>> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
>> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
>> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
>> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
>> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
>> In file included from routing/MultiGraph.h:237,
>>                  from routing/DTLSRRouter.h:25,
>>                  from routing/DTLSRRouter.cc:24:
>> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_node(const
>>    std::basic_string<char, std::char_traits<char>, std::allocator<char>
>>> &)'
>>    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
>> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_node(const
>>    std::string&) const
>> routing/MultiGraph.tcc:54: template definition of non-template `
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node* 
>> dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::find_node(const std::basic_string<char,
>> std::char_traits<char>,
>>    std::allocator<char> >&)'
>> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo, 
>> _EdgeInfo>::find_edge(const
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&) [with
>>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>>    dtn::DTLSRRouter::EdgeInfo]':
>> routing/DTLSRRouter.cc:304:   instantiated from here
>> routing/MultiGraph.tcc:115: no match for 
>> `__gnu_cxx::__normal_iterator<const
>>    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo> >& =
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
>>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> ::operator=(const __gnu_cxx::__normal_iterator<const
>>    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo> >&)
>> routing/DTLSRRouter.cc:304:   instantiated from here
>> routing/MultiGraph.tcc:115: no match for 
>> `__gnu_cxx::__normal_iterator<const
>>    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo> >& !=
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> routing/DTLSRRouter.cc:304:   instantiated from here
>> routing/MultiGraph.tcc:116: cannot convert `const
>> dtn::DTLSRRouter::NodeInfo'
>>    to `const dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
>> routing/DTLSRRouter.cc:304:   instantiated from here
>> routing/MultiGraph.tcc:119: cannot convert `const
>> dtn::DTLSRRouter::NodeInfo'
>>    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in return
>> routing/MultiGraph.tcc: In member function `bool 
>> dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::del_edge(dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*) [with _NodeInfo =
>>    dtn::DTLSRRouter::NodeInfo, _EdgeInfo = dtn::DTLSRRouter::EdgeInfo]':
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:133: no match for `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >& =
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> ::operator=(const
>> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >&)
>> routing/MultiGraph.tcc:133: no match for `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> & !=
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:136: no match for `dtn::DTLSRRouter::NodeInfo& ==
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:140: no match for `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >& =
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> ::operator=(const
>> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >&)
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:143: no match for `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> & !=
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:144: no match for `dtn::DTLSRRouter::NodeInfo& ==
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:149: no matching function for call to `
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >&)'
>> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >) [with _Tp =
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
>> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >) [with _Tp =
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
>> routing/DTLSRRouter.cc:397:   instantiated from here
>> routing/MultiGraph.tcc:150: no matching function for call to `
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> 
>> >&)'
>> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >) [with _Tp =
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
>> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>>    std::vector<_Tp, _Alloc> >) [with _Tp =
>>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
>> routing/MultiGraph.tcc: In member function `void 
>> dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::shortest_path(const dtn::MultiGraph<_NodeInfo,
>>    _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::EdgeVector*,
>>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
>>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>>    dtn::DTLSRRouter::EdgeInfo]':
>> routing/MultiGraph.tcc:333:   instantiated from
>> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
>> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>> dtn::DTLSRRouter::EdgeInfo]'
>> routing/DTLSRRouter.cc:465:   instantiated from here
>> routing/MultiGraph.tcc:208: conversion from `
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' to non-scalar type `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >'
>>    requested
>> routing/MultiGraph.tcc:333:   instantiated from
>> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
>> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>> dtn::DTLSRRouter::EdgeInfo]'
>> routing/DTLSRRouter.cc:465:   instantiated from here
>> routing/MultiGraph.tcc:208: no match for `
>>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>>> & !=
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node**,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' operator
>> routing/MultiGraph.tcc:211: base operand of `->' has non-pointer type `
>>    dtn::DTLSRRouter::NodeInfo'
>> routing/MultiGraph.tcc:212: base operand of `->' has non-pointer type `
>>    dtn::DTLSRRouter::NodeInfo'
>> routing/MultiGraph.tcc:213: base operand of `->' has non-pointer type `
>>    dtn::DTLSRRouter::NodeInfo'
>> routing/MultiGraph.tcc:333:   instantiated from
>> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
>> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
>> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>> dtn::DTLSRRouter::EdgeInfo]'
>> routing/DTLSRRouter.cc:465:   instantiated from here
>> routing/MultiGraph.tcc:227: conversion from `
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' to non-scalar type `
>>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >'
>>    requested
>> routing/MultiGraph.tcc:227: no match for 
>> `__gnu_cxx::__normal_iterator<const
>>    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo> >& !=
>>    
>> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
>> routing/MultiGraph.tcc:230: cannot convert `const
>> dtn::DTLSRRouter::NodeInfo'
>>    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
>> make[1]: *** [routing/DTLSRRouter.o] Error 1
>> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/servlib'
>> make: *** [servlib] Error 2
>>
>> _______________________________________________
>> dtn-users mailing list
>> [email-masked]
>> http://maillists.intel-research.net/mailman/listinfo/dtn-users
> 
> 

From: Michael Demmer <[email-masked]>
To: Karol Kowalik <[email-masked]>
Date: Mon, 14 Apr 2008 08:43:40 -0700
Cc: [email-masked]
Subject: Re: [dtn-users] compiling DTN2 with gcc32

I've fixed this problem in the mercurial repository:

    http://www.dtnrg.org/hg/DTN2/rev/9d3acc74fd07a

You should be able to either apply the given patch to your code or  
update to the version at the tip of the repository.

-mike

On Apr 14, 2008, at 4:20 AM, Karol Kowalik wrote:
> Hello,
>
> I'm trying to compile DTN2 with gcc32 and g++32 (gcc version 3.2.3
> 20030502 (Red Hat Linux 3.2.3-47.fc4)). However, I get many errors
> (attached below). Do you know if there is an easy fix for this?
>
> Thanks
> Karol
>
>
>
> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
> In file included from routing/MultiGraph.h:237,
>                  from routing/DTLSRRouter.h:25,
>                  from routing/DTLSRRouter.cc:24:
> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>    std::basic_string<char, std::char_traits<char>,  
> std::allocator<char>
>> &)'
>    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>    std::string&) const
> routing/MultiGraph.tcc:54: template definition of non-template `
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*  
> dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::find_node(const std::basic_string<char,
> std::char_traits<char>,
>    std::allocator<char> >&)'
> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_edge(const
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&)  
> [with
>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>    dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>    dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo> >& =
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
> [root@escher dtn-2.5.0]# more log
> make -w -C oasys
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/oasys'
> make[1]: Nothing to be done for `all'.
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/oasys'
> make -w -C applib
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/applib'
> make[1]: Nothing to be done for `all'.
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/applib'
> make -w -C servlib
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/servlib'
> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
> In file included from routing/MultiGraph.h:237,
>                  from routing/DTLSRRouter.h:25,
>                  from routing/DTLSRRouter.cc:24:
> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>    std::basic_string<char, std::char_traits<char>,  
> std::allocator<char>
>> &)'
>    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>    std::string&) const
> routing/MultiGraph.tcc:54: template definition of non-template `
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*  
> dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::find_node(const std::basic_string<char,
> std::char_traits<char>,
>    std::allocator<char> >&)'
> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_edge(const
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&)  
> [with
>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>    dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>    dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo> >& =
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const __gnu_cxx::__normal_iterator<const
>    dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo> >&)
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>    dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo> >& !=
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:116: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>    to `const dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:119: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in return
> routing/MultiGraph.tcc: In member function `bool  
> dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::del_edge(dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*) [with _NodeInfo =
>    dtn::DTLSRRouter::NodeInfo, _EdgeInfo =  
> dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:133: no match for `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >& =
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const
> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)
> routing/MultiGraph.tcc:133: no match for `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> & !=
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:136: no match for  
> `dtn::DTLSRRouter::NodeInfo& ==
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:140: no match for `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >& =
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const
> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:143: no match for `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> & !=
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:144: no match for  
> `dtn::DTLSRRouter::NodeInfo& ==
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:149: no matching function for call to `
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)'
> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >) [with _Tp =
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >) [with _Tp =
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:150: no matching function for call to `
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)'
> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >) [with _Tp =
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>    std::vector<_Tp, _Alloc> >) [with _Tp =
>    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> routing/MultiGraph.tcc: In member function `void  
> dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::shortest_path(const dtn::MultiGraph<_NodeInfo,
>    _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::Node*,
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::EdgeVector*,
>    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*)  
> [with
>    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>    dtn::DTLSRRouter::EdgeInfo]':
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:208: conversion from `
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' to non-scalar type `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >'
>    requested
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:208: no match for `
>    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>> & !=
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node**,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' operator
> routing/MultiGraph.tcc:211: base operand of `->' has non-pointer  
> type `
>    dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:212: base operand of `->' has non-pointer  
> type `
>    dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:213: base operand of `->' has non-pointer  
> type `
>    dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:227: conversion from `
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' to non-scalar type `
>    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>    std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >'
>    requested
> routing/MultiGraph.tcc:227: no match for  
> `__gnu_cxx::__normal_iterator<const
>    dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo> >& !=
>     
> __gnu_cxx 
> ::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*,
>    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/MultiGraph.tcc:230: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
> make[1]: *** [routing/DTLSRRouter.o] Error 1
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/servlib'
> make: *** [servlib] Error 2
>
> _______________________________________________
> dtn-users mailing list
> [email-masked]
> http://maillists.intel-research.net/mailman/listinfo/dtn-users

From: John Ronan <[email-masked]>
Date: Mon, 14 Apr 2008 12:43:13 +0100
To: dtn-users mailing list <[email-masked]>
Subject: Re: [dtn-users] compiling DTN2 with gcc32

I'm no expert, but I'm guessing there is a c++ library missing do you  
have all the c++ development headers installed OR maybe the DTN code  
might have a dependency on a newer version of the c++ libraries. That  
said, that could all be rubbish and not your problem at all.  Its  
just an un-educated guess.

Regards
John
On 14 Apr 2008, at 12:20, Karol Kowalik wrote:
> Hello,
>
> I'm trying to compile DTN2 with gcc32 and g++32 (gcc version 3.2.3
> 20030502 (Red Hat Linux 3.2.3-47.fc4)). However, I get many errors
> (attached below). Do you know if there is an easy fix for this?
>
> Thanks
> Karol
>
>
>
> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
> In file included from routing/MultiGraph.h:237,
>                   from routing/DTLSRRouter.h:25,
>                   from routing/DTLSRRouter.cc:24:
> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>     std::basic_string<char, std::char_traits<char>,  
> std::allocator<char>
>> &)'
>     does not match any in class `dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>'
> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>     std::string&) const
> routing/MultiGraph.tcc:54: template definition of non-template `
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*  
> dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::find_node(const std::basic_string<char,
> std::char_traits<char>,
>     std::allocator<char> >&)'
> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_edge(const
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&)  
> [with
>     _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>     dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>     dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo> >& =
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>     __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
> [root@escher dtn-2.5.0]# more log
> make -w -C oasys
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/oasys'
> make[1]: Nothing to be done for `all'.
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/oasys'
> make -w -C applib
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/applib'
> make[1]: Nothing to be done for `all'.
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/applib'
> make -w -C servlib
> make[1]: Entering directory `/opt/dtn/dtn-2.5.0/servlib'
> g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
> -fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
> routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
> routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
> In file included from routing/MultiGraph.h:237,
>                   from routing/DTLSRRouter.h:25,
>                   from routing/DTLSRRouter.cc:24:
> routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>     std::basic_string<char, std::char_traits<char>,  
> std::allocator<char>
>> &)'
>     does not match any in class `dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>'
> routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_node(const
>     std::string&) const
> routing/MultiGraph.tcc:54: template definition of non-template `
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*  
> dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::find_node(const std::basic_string<char,
> std::char_traits<char>,
>     std::allocator<char> >&)'
> routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::find_edge(const
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&)  
> [with
>     _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>     dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>     dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo> >& =
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>     __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>     __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const __gnu_cxx::__normal_iterator<const
>     dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo> >&)
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:115: no match for  
> `__gnu_cxx::__normal_iterator<const
>     dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo> >& !=
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:116: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>     to `const dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
> routing/DTLSRRouter.cc:304:   instantiated from here
> routing/MultiGraph.tcc:119: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>     to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*' in return
> routing/MultiGraph.tcc: In member function `bool  
> dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::del_edge(dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*) [with _NodeInfo =
>     dtn::DTLSRRouter::NodeInfo, _EdgeInfo =  
> dtn::DTLSRRouter::EdgeInfo]':
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:133: no match for `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >& =
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const
> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)
> routing/MultiGraph.tcc:133: no match for `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> & !=
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:136: no match for  
> `dtn::DTLSRRouter::NodeInfo& ==
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:140: no match for `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >& =
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> /usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> ::operator=(const
> __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:143: no match for `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> & !=
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:144: no match for  
> `dtn::DTLSRRouter::NodeInfo& ==
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:149: no matching function for call to `
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)'
> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>     __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>     std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >) [with _Tp =
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>     __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>     std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >) [with _Tp =
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> routing/DTLSRRouter.cc:397:   instantiated from here
> routing/MultiGraph.tcc:150: no matching function for call to `
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >&)'
> /usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
>     __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>     std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >) [with _Tp =
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> /usr/include/c++/3.2.3/bits/stl_vector.h:670:
>     __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
>     std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
>     std::vector<_Tp, _Alloc> >) [with _Tp =
>     dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*>]
> routing/MultiGraph.tcc: In member function `void  
> dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::shortest_path(const dtn::MultiGraph<_NodeInfo,
>     _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo,  
> _EdgeInfo>::Node*,
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::EdgeVector*,
>     dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*)  
> [with
>     _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
>     dtn::DTLSRRouter::EdgeInfo]':
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:208: conversion from `
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Node**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Node*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Node*> > >' to non-scalar type `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >'
>     requested
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:208: no match for `
>     __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo>
>> & !=
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Node**,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Node*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Node*> > >' operator
> routing/MultiGraph.tcc:211: base operand of `->' has non-pointer  
> type `
>     dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:212: base operand of `->' has non-pointer  
> type `
>     dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:213: base operand of `->' has non-pointer  
> type `
>     dtn::DTLSRRouter::NodeInfo'
> routing/MultiGraph.tcc:333:   instantiated from
> `dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*  
> dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
> _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
> dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
> _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
> dtn::DTLSRRouter::EdgeInfo]'
> routing/DTLSRRouter.cc:465:   instantiated from here
> routing/MultiGraph.tcc:227: conversion from `
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' to non-scalar type `
>     __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
>     std::vector<dtn::DTLSRRouter::NodeInfo,  
> dtn::DTLSRRouter::EdgeInfo> >'
>     requested
> routing/MultiGraph.tcc:227: no match for  
> `__gnu_cxx::__normal_iterator<const
>     dtn::DTLSRRouter::NodeInfo*,  
> std::vector<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo> >& !=
>      
> __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInf 
> o,
>     dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
>     std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*,
>     std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
> routing/MultiGraph.tcc:230: cannot convert `const
> dtn::DTLSRRouter::NodeInfo'
>     to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
>     dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
> make[1]: *** [routing/DTLSRRouter.o] Error 1
> make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/servlib'
> make: *** [servlib] Error 2
>
> _______________________________________________
> dtn-users mailing list
> [email-masked]
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
>

--
John Ronan <[email-masked]>, +353-51-302938
Telecommunications Software &  Systems Group,  http://www.tssg.org

Date: Mon, 14 Apr 2008 12:20:00 +0100
From: Karol Kowalik <[email-masked]>
To: [email-masked]
Subject: [dtn-users] compiling DTN2 with gcc32

Hello,

I'm trying to compile DTN2 with gcc32 and g++32 (gcc version 3.2.3
20030502 (Red Hat Linux 3.2.3-47.fc4)). However, I get many errors 
(attached below). Do you know if there is an easy fix for this?

Thanks
Karol

g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
-fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
In file included from routing/MultiGraph.h:237,
                  from routing/DTLSRRouter.h:25,
                  from routing/DTLSRRouter.cc:24:
routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_node(const
    std::basic_string<char, std::char_traits<char>, std::allocator<char>
>&)'
    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_node(const
    std::string&) const
routing/MultiGraph.tcc:54: template definition of non-template `
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::find_node(const std::basic_string<char,
std::char_traits<char>,
    std::allocator<char> >&)'
routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_edge(const
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&) [with
    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
    dtn::DTLSRRouter::EdgeInfo]':
routing/DTLSRRouter.cc:304:   instantiated from here
routing/MultiGraph.tcc:115: no match for `__gnu_cxx::__normal_iterator<const
    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo> >& =
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
/usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
[root@escher dtn-2.5.0]# more log
make -w -C oasys
make[1]: Entering directory `/opt/dtn/dtn-2.5.0/oasys'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/oasys'
make -w -C applib
make[1]: Entering directory `/opt/dtn/dtn-2.5.0/applib'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/applib'
make -w -C servlib
make[1]: Entering directory `/opt/dtn/dtn-2.5.0/servlib'
g++32 -I.. -I.. -DHAVE_CONFIG_H -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I../servlib -I../oasys    -Wcast-align -g
-fno-inline  -fPIC -DPIC -MMD -MP -MT "routing/DTLSRRouter.o
routing/DTLSRRouter.E routing/DTLSRRouter.po"  -g  -c
routing/DTLSRRouter.cc -o routing/DTLSRRouter.o
In file included from routing/MultiGraph.h:237,
                  from routing/DTLSRRouter.h:25,
                  from routing/DTLSRRouter.cc:24:
routing/MultiGraph.tcc:54: prototype for `dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_node(const
    std::basic_string<char, std::char_traits<char>, std::allocator<char>
>&)'
    does not match any in class `dtn::MultiGraph<_NodeInfo, _EdgeInfo>'
routing/MultiGraph.h:55: candidate is: dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_node(const
    std::string&) const
routing/MultiGraph.tcc:54: template definition of non-template `
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node* dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::find_node(const std::basic_string<char,
std::char_traits<char>,
    std::allocator<char> >&)'
routing/MultiGraph.tcc: In member function `dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo, _EdgeInfo>::find_edge(const
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*, const _EdgeInfo&) [with
    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
    dtn::DTLSRRouter::EdgeInfo]':
routing/DTLSRRouter.cc:304:   instantiated from here
routing/MultiGraph.tcc:115: no match for `__gnu_cxx::__normal_iterator<const
    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo> >& =
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
/usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
    >::operator=(const __gnu_cxx::__normal_iterator<const
    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo> >&)
routing/DTLSRRouter.cc:304:   instantiated from here
routing/MultiGraph.tcc:115: no match for `__gnu_cxx::__normal_iterator<const
    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo> >& !=
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
routing/DTLSRRouter.cc:304:   instantiated from here
routing/MultiGraph.tcc:116: cannot convert `const
dtn::DTLSRRouter::NodeInfo'
    to `const dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
routing/DTLSRRouter.cc:304:   instantiated from here
routing/MultiGraph.tcc:119: cannot convert `const
dtn::DTLSRRouter::NodeInfo'
    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*' in return
routing/MultiGraph.tcc: In member function `bool dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::del_edge(dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge*) [with _NodeInfo =
    dtn::DTLSRRouter::NodeInfo, _EdgeInfo = dtn::DTLSRRouter::EdgeInfo]':
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:133: no match for `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >& =
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
/usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
    >::operator=(const
__gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&)
routing/MultiGraph.tcc:133: no match for `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>& !=
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:136: no match for `dtn::DTLSRRouter::NodeInfo& ==
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:140: no match for `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >& =
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
/usr/include/c++/3.2.3/bits/stl_iterator.h:571: candidates are:
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
    >::operator=(const
__gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&)
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:143: no match for `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>& !=
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:144: no match for `dtn::DTLSRRouter::NodeInfo& ==
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*&' operator
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:149: no matching function for call to `
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&)'
/usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >) [with _Tp =
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
/usr/include/c++/3.2.3/bits/stl_vector.h:670:
    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >) [with _Tp =
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
routing/DTLSRRouter.cc:397:   instantiated from here
routing/MultiGraph.tcc:150: no matching function for call to `
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::EdgeVector::erase(
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >&)'
/usr/include/c++/3.2.3/bits/stl_vector.h:647: candidates are:
    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >) [with _Tp =
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
/usr/include/c++/3.2.3/bits/stl_vector.h:670:
    __gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
    std::vector<_Tp, _Alloc>::erase(__gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >, __gnu_cxx::__normal_iterator<_Tp*,
    std::vector<_Tp, _Alloc> >) [with _Tp =
    dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*, _Alloc =
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*>]
routing/MultiGraph.tcc: In member function `void dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::shortest_path(const dtn::MultiGraph<_NodeInfo,
    _EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::EdgeVector*,
    dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
    _NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
    dtn::DTLSRRouter::EdgeInfo]':
routing/MultiGraph.tcc:333:   instantiated from
`dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
_NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
dtn::DTLSRRouter::EdgeInfo]'
routing/DTLSRRouter.cc:465:   instantiated from here
routing/MultiGraph.tcc:208: conversion from `
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' to non-scalar type `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >'
    requested
routing/MultiGraph.tcc:333:   instantiated from
`dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
_NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
dtn::DTLSRRouter::EdgeInfo]'
routing/DTLSRRouter.cc:465:   instantiated from here
routing/MultiGraph.tcc:208: no match for `
    __gnu_cxx::__normal_iterator<dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo>
>& !=
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node**,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Node*> > >' operator
routing/MultiGraph.tcc:211: base operand of `->' has non-pointer type `
    dtn::DTLSRRouter::NodeInfo'
routing/MultiGraph.tcc:212: base operand of `->' has non-pointer type `
    dtn::DTLSRRouter::NodeInfo'
routing/MultiGraph.tcc:213: base operand of `->' has non-pointer type `
    dtn::DTLSRRouter::NodeInfo'
routing/MultiGraph.tcc:333:   instantiated from
`dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Edge* dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::best_next_hop(const dtn::MultiGraph<_NodeInfo,
_EdgeInfo>::Node*, const dtn::MultiGraph<_NodeInfo, _EdgeInfo>::Node*,
dtn::MultiGraph<_NodeInfo, _EdgeInfo>::WeightFn*, dtn::Bundle*) [with
_NodeInfo = dtn::DTLSRRouter::NodeInfo, _EdgeInfo =
dtn::DTLSRRouter::EdgeInfo]'
routing/DTLSRRouter.cc:465:   instantiated from here
routing/MultiGraph.tcc:227: conversion from `
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' to non-scalar type `
    __gnu_cxx::__normal_iterator<const dtn::DTLSRRouter::NodeInfo*,
    std::vector<dtn::DTLSRRouter::NodeInfo, dtn::DTLSRRouter::EdgeInfo> >'
    requested
routing/MultiGraph.tcc:227: no match for `__gnu_cxx::__normal_iterator<const
    dtn::DTLSRRouter::NodeInfo*, std::vector<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo> >& !=
    __gnu_cxx::__normal_iterator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge* const*,
    std::vector<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*,
    std::allocator<dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*> > >' operator
routing/MultiGraph.tcc:230: cannot convert `const
dtn::DTLSRRouter::NodeInfo'
    to `dtn::MultiGraph<dtn::DTLSRRouter::NodeInfo,
    dtn::DTLSRRouter::EdgeInfo>::Edge*' in initialization
make[1]: *** [routing/DTLSRRouter.o] Error 1
make[1]: Leaving directory `/opt/dtn/dtn-2.5.0/servlib'
make: *** [servlib] Error 2

Date: Wed, 09 Apr 2008 17:56:52 -0400
From: Gautam Thaker <[email-masked]>
Organization: Lockheed Martin -- Advanced Technology Laboratories
To: [email-masked]
Subject: [dtn-users] traceback of 'dtnd' that died on me...

I was doing so testing  in which I was sending small (4 byte) bundles 
between 2 machines but was taking interfaces up and down to see the 
impact. DTN seemed to behave well though I am/was collecting more stats. 
  About an hour or so in 'dtnd' died for me. Trace back says:

Core was generated by `dtnd -c a/dtn.conf -d -t -o a.logfile'.
Program terminated with signal 11, Segmentation fault.
#0  0x0807fc9b in dtn::Bundle::num_mappings () at 
io/../thread/../debug/Log.h:173
173     io/../thread/../debug/Log.h: No such file or directory.
         in io/../thread/../debug/Log.h
(gdb) where
#0  0x0807fc9b in dtn::Bundle::num_mappings () at 
io/../thread/../debug/Log.h:173
#1  0x08085c96 in dtn::BundleDaemon::event_handlers_completed ()
     at io/../thread/../debug/Log.h:173
#2  0x08085d4f in dtn::BundleDaemon::handle_event () at 
io/../thread/../debug/Log.h:173
#3  0x08095afd in dtn::BundleDaemon::run () at 
io/../thread/../debug/Log.h:173
#4  0x0833b734 in oasys::Thread::thread_run (this=0x96e8988,
     thread_name=0x96e8998 "BundleDaemon", thread_id=3065183120) at 
thread/Thread.cc:356
#5  0x0833b8cb in oasys::Thread::pre_thread_run (t=0x96e8988) at 
thread/Thread.cc:301
#6  0x0094250b in start_thread () from /lib/libpthread.so.0
#7  0x00866b2e in clone () from /lib/libc.so.6
Current language:  auto; currently c++
(gdb)

[1207766910.395829 /dtnd notice] DTN daemon starting up... (pid 2380)
[1207766910.404048 /dtn/storage warning] PRUNING CONTENTS OF /var/dtn/db 
IN 3 SECONDS
[1207766911.404097 /dtn/storage warning] PRUNING CONTENTS OF /var/dtn/db 
IN 2 SECONDS
[1207766912.404130 /dtn/storage warning] PRUNING CONTENTS OF /var/dtn/db 
IN 1 SECONDS
[1207766913.404176 /dtn/storage notice] tidy option removing directory 
'/bin/rm -rf /var/dtn/db'
[1207766913.422640 /dtn/storage notice] creating new database directory 
/var/dtn/db
[1207766913.424564 /dtnd notice] tidy option removing directory '/bin/rm 
-rf /var/dtn/bundles'
[1207766913.532871 /dtn/bundle/daemon notice] loading bundles from data 
store
[1207766913.532969 /dtn/bundle/daemon/loop warning] event LINK_CREATED 
was in queue for 3.129056 seconds
[1207766913.533052 /dtn/bundle/daemon/loop warning] event ROUTE_ADD was 
in queue for 3.129065 seconds
ERROR: dtnd (pid 2380) got fatal SIGSEGV - will dump core
STACK TRACE: 0x830a65b 0x807fc9b 0x8085c96 0x8085d4f 0x8095afd 0x833b734 
0x833b8cb 0x94250b

In case of any use. I am running Mercurial version w/ 2-3 days old "pull".

Gautam

Date: Tue, 8 Apr 2008 00:40:31 +0200
From: "[email-masked]" <[email-masked]>
To: "Michael Demmer" <[email-masked]>
Cc: [email-masked]
Subject: Re: [dtn-users] external router patches

------=_Part_16354_26021140.1207608031261
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello Michael,

I've now added testcases for link requests to dtn2xr (the router I am
working on) It requires ruby and soap4r, the installation is explained
in the README of dtn2xr. Then you can test it by running 'ruby
test_link.rb'

you can get it from:
git clone git://github.com/jeffdameth/dtn2xr.git

Regards,
Hannes

On Mon, Apr 7, 2008 at 5:00 PM, Michael Demmer <[email-masked]> wrote:
> Hi Hannes,
>
>  I'm happy to patch these changes onto the main DTN2 tree but as I don't
> have an implementation of the external router API to test with, I'm
> reluctant to do so until I can verify that they work.
>
>  Perhaps someone at BBN could take a look at these and see if they work.
> Alternatively, if someone has a simple external router that could be pushed
> into the main DTN2 source repository, then I could do this testing as well.
>
>  -m
>
>
>
>
>  On Apr 6, 2008, at 12:16 PM, Hannes Janetzek wrote:
>
> > Hello,
> >
> > I ran into a few more problems:
> > if one sends out an add_link_request like the one below it causes the
> > daemon to segfault because the xml tree element of str_value is passed
> > for further processing instead of its value. The attached patches do fix
> > this issue.
> >
> > <?xml version="1.0" encoding="utf-8" ?>
> > <bpa>
> >  <add_link_request link_id="homeagent_link-0"
> >     link_type="ondemand"
> >     clayer="tcp">
> >   <link_config_params>
> >     <cl_params>
> >       <name>nexthop</name>
> >       <str_value>192.168.1.222:4556</str_value>
> >     </cl_params>
> >   </link_config_params>
> >   <remote_eid uri="dtn://test.dtn/"></remote_eid>
> >  </add_link_request>
> > </bpa>
> >
> >
> > I spend some hours to figure out why a bundle sent via bundle injection
> > passed a bunch of random memory contents as payload to the
> > destination, until i found out that a hard link should be created from
> > my payload to var/dtn/bundles but they were on different partitions so
> > this seems to have failed - but I didnt looked further into this. it
> > works if the injected payload and the bundles dir are on the same
> > partition
> >
> > Another thing is that the link_report is not really usefull since it
> > does not give the link_id which one would need to use the link.
> >
> >
> > I am working on a ruby implementation of an external bundle
> > router based on rdtn for a project we do at university. As one can
> > imagine the program is still pre-alpha, but a static and a priority
> > router are already working. I will give the link if someone is
> > interested to try it out.
> >
> >
> > Best Regards,
> > Hannes Janetzek
> >
> >
> >
> >
> >
> >
> >
> >
>
> > _______________________________________________
> > dtn-users mailing list
> > [email-masked]
> > http://maillists.intel-research.net/mailman/listinfo/dtn-users
> >
>
>
>

------=_Part_16354_26021140.1207608031261
Content-Type: text/x-diff; name=ExternalRouter.cc-get_values.patch
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fermiscr0
Content-Disposition: attachment;
 filename=ExternalRouter.cc-get_values.patch

------=_Part_16354_26021140.1207608031261--

From: Michael Demmer <[email-masked]>
To: Hannes Janetzek <[email-masked]>
Date: Mon, 7 Apr 2008 08:00:27 -0700
Cc: [email-masked]
Subject: Re: [dtn-users] external router patches

--Apple-Mail-35--507522732
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed;
	delsp=yes
Content-Transfer-Encoding: 7bit

Hi Hannes,

I'm happy to patch these changes onto the main DTN2 tree but as I  
don't have an implementation of the external router API to test with,  
I'm reluctant to do so until I can verify that they work.

Perhaps someone at BBN could take a look at these and see if they  
work. Alternatively, if someone has a simple external router that  
could be pushed into the main DTN2 source repository, then I could do  
this testing as well.

-m

On Apr 6, 2008, at 12:16 PM, Hannes Janetzek wrote:
> Hello,
>
> I ran into a few more problems:
> if one sends out an add_link_request like the one below it causes the
> daemon to segfault because the xml tree element of str_value is passed
> for further processing instead of its value. The attached patches do  
> fix
> this issue.
>
> <?xml version="1.0" encoding="utf-8" ?>
> <bpa>
>  <add_link_request link_id="homeagent_link-0"
>      link_type="ondemand"
>      clayer="tcp">
>    <link_config_params>
>      <cl_params>
>        <name>nexthop</name>
>        <str_value>192.168.1.222:4556</str_value>
>      </cl_params>
>    </link_config_params>
>    <remote_eid uri="dtn://test.dtn/"></remote_eid>
>  </add_link_request>
> </bpa>
>
>
> I spend some hours to figure out why a bundle sent via bundle  
> injection
> passed a bunch of random memory contents as payload to the
> destination, until i found out that a hard link should be created from
> my payload to var/dtn/bundles but they were on different partitions so
> this seems to have failed - but I didnt looked further into this. it
> works if the injected payload and the bundles dir are on the same
> partition
>
> Another thing is that the link_report is not really usefull since it
> does not give the link_id which one would need to use the link.
>
>
> I am working on a ruby implementation of an external bundle
> router based on rdtn for a project we do at university. As one can
> imagine the program is still pre-alpha, but a static and a priority
> router are already working. I will give the link if someone is
> interested to try it out.
>
>
> Best Regards,
> Hannes Janetzek
>
>
>
>
>
>
>

--Apple-Mail-35--507522732
Content-Disposition: attachment;
	filename=ExternalRouter.cc-get_param_values.patch
Content-Type: text/x-patch; x-unix-mode=0666;
	name="ExternalRouter.cc-get_param_values.patch"
Content-Transfer-Encoding: 7bit

diff -r 6be66e01be42 servlib/routing/ExternalRouter.cc
--- a/servlib/routing/ExternalRouter.cc	Tue Jan 15 17:33:25 2008 -0800
+++ b/servlib/routing/ExternalRouter.cc	Sun Apr 06 20:32:48 2008 +0200
@@ -826,7 +826,7 @@ ExternalRouter::ModuleServer::run()
             }
         }
 
-        if (sock_poll->revents & POLLIN) {
+        if (sock_poll->revents & POLLIN) {	  
             char buf[MAX_UDP_PACKET];
             in_addr_t raddr;
             u_int16_t rport;
@@ -1101,18 +1101,20 @@ ExternalRouter::ModuleServer::process_ac
                 linkConfigType::cl_params::container::iterator iter;
 
                 for (iter = c.begin(); iter < c.end(); iter++) {
+		    /* only string values should be passed, according to what 
+		       handle_link_create does with the data, maybe remove these? */
                     if (iter->bool_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->bool_value()));
+                                                        iter->bool_value().get()));
                     else if (iter->u_int_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->u_int_value()));
+                                                        iter->u_int_value().get()));
                     else if (iter->int_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->int_value()));
+                                                        iter->int_value().get()));
                     else if (iter->str_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->str_value()));
+                                                        iter->str_value().get()));
                     else
                         log_warn("unknown value type in key-value pair");
                 }

--Apple-Mail-35--507522732
Content-Disposition: attachment;
	filename=BundleDaemon.cc-correct_params_count.patch
Content-Type: text/x-patch; x-unix-mode=0666;
	name="BundleDaemon.cc-correct_params_count.patch"
Content-Transfer-Encoding: 7bit

diff -r 6be66e01be42 servlib/bundling/BundleDaemon.cc
--- a/servlib/bundling/BundleDaemon.cc	Tue Jan 15 17:33:25 2008 -0800
+++ b/servlib/bundling/BundleDaemon.cc	Sun Apr 06 20:28:46 2008 +0200
@@ -1512,7 +1512,7 @@ BundleDaemon::handle_link_create(LinkCre
             i++;
         }
     }
-    argc = i+1;
+    argc = i;
 
     const char *invalidp;
     LinkRef link = Link::create_link(request->name_, request->link_type_,

--Apple-Mail-35--507522732
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit

> _______________________________________________
> dtn-users mailing list
> [email-masked]
> http://maillists.intel-research.net/mailman/listinfo/dtn-users

--Apple-Mail-35--507522732--

Date: Sun, 6 Apr 2008 21:16:57 +0200
Cc: [email-masked]
From: Hannes Janetzek <[email-masked]>
Subject: Re: [dtn-users] external router patches

--MP_/7loCde9.D9uRgTB=mvd9a+J
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello,

I ran into a few more problems: 
if one sends out an add_link_request like the one below it causes the
daemon to segfault because the xml tree element of str_value is passed
for further processing instead of its value. The attached patches do fix
this issue.

<?xml version="1.0" encoding="utf-8" ?>
<bpa>
  <add_link_request link_id="homeagent_link-0"
      link_type="ondemand"
      clayer="tcp">
    <link_config_params>
      <cl_params>
        <name>nexthop</name>
        <str_value>192.168.1.222:4556</str_value>
      </cl_params>
    </link_config_params>
    <remote_eid uri="dtn://test.dtn/"></remote_eid>
  </add_link_request>
</bpa>

I spend some hours to figure out why a bundle sent via bundle injection
passed a bunch of random memory contents as payload to the
destination, until i found out that a hard link should be created from
my payload to var/dtn/bundles but they were on different partitions so 
this seems to have failed - but I didnt looked further into this. it
works if the injected payload and the bundles dir are on the same
partition

Another thing is that the link_report is not really usefull since it
does not give the link_id which one would need to use the link.

I am working on a ruby implementation of an external bundle
router based on rdtn for a project we do at university. As one can
imagine the program is still pre-alpha, but a static and a priority
router are already working. I will give the link if someone is
interested to try it out.

Best Regards,
Hannes Janetzek

--MP_/7loCde9.D9uRgTB=mvd9a+J
Content-Type: text/x-patch; name=ExternalRouter.cc-get_param_values.patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=ExternalRouter.cc-get_param_values.patch

diff -r 6be66e01be42 servlib/routing/ExternalRouter.cc
--- a/servlib/routing/ExternalRouter.cc	Tue Jan 15 17:33:25 2008 -0800
+++ b/servlib/routing/ExternalRouter.cc	Sun Apr 06 20:32:48 2008 +0200
@@ -826,7 +826,7 @@ ExternalRouter::ModuleServer::run()
             }
         }
 
-        if (sock_poll->revents & POLLIN) {
+        if (sock_poll->revents & POLLIN) {	  
             char buf[MAX_UDP_PACKET];
             in_addr_t raddr;
             u_int16_t rport;
@@ -1101,18 +1101,20 @@ ExternalRouter::ModuleServer::process_ac
                 linkConfigType::cl_params::container::iterator iter;
 
                 for (iter = c.begin(); iter < c.end(); iter++) {
+		    /* only string values should be passed, according to what 
+		       handle_link_create does with the data, maybe remove these? */
                     if (iter->bool_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->bool_value()));
+                                                        iter->bool_value().get()));
                     else if (iter->u_int_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->u_int_value()));
+                                                        iter->u_int_value().get()));
                     else if (iter->int_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->int_value()));
+                                                        iter->int_value().get()));
                     else if (iter->str_value().present())
                         params.push_back(NamedAttribute(iter->name(), 
-                                                        iter->str_value()));
+                                                        iter->str_value().get()));
                     else
                         log_warn("unknown value type in key-value pair");
                 }

--MP_/7loCde9.D9uRgTB=mvd9a+J
Content-Type: text/x-patch; name=BundleDaemon.cc-correct_params_count.patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=BundleDaemon.cc-correct_params_count.patch

diff -r 6be66e01be42 servlib/bundling/BundleDaemon.cc
--- a/servlib/bundling/BundleDaemon.cc	Tue Jan 15 17:33:25 2008 -0800
+++ b/servlib/bundling/BundleDaemon.cc	Sun Apr 06 20:28:46 2008 +0200
@@ -1512,7 +1512,7 @@ BundleDaemon::handle_link_create(LinkCre
             i++;
         }
     }
-    argc = i+1;
+    argc = i;
 
     const char *invalidp;
     LinkRef link = Link::create_link(request->name_, request->link_type_,

--MP_/7loCde9.D9uRgTB=mvd9a+J--

Date: Thu, 3 Apr 2008 18:43:07 +0200
To: [email-masked]
From: Hannes Janetzek <[email-masked]>
Subject: Re: [dtn-users] external router protocol question

Am Thu, 03 Apr 2008 10:03:16 -0400
schrieb Christopher Small <[email-masked]>:

> Hannes Janetzek wrote:  
> > Hello,
> > I am working on an router implementation for DTN2 which uses the
> > external router interface. The problem is now with the data
> > contained in bundle_report it is not possible to send or to query
> > attributes of bundles since these need gbof_id and local_id to be
> > passed to the request/query. (The bundle_report is used to load the
> > bundle state information when the external router is starting, so
> > it's the only pointer one has to the Bundles that reside in the
> > daemon.) Has someone a solution for this? To me it seems that
> > gbof_id and local_id should be included in b  
> A bundle_report has a sequence of bundleType in it. Each bundleType
> has bundleAttributes in it.
> 
> bundleAttributes has a field "bundleid" which is the local bundle 
> identifier.
> 
> A gbofIdType consists of a number of fields, which can be found in 
> bundleType and bundleAttributes, viz.:
> 
>     source EID: bundleType.source
>     creation timestamp: bundleAttributes.creation_ts_seconds, 
> bundleAttributes.creation_ts_seqno
>     is_fragment: bundleAttributes
>     frag_length: bundleType.length
>     frag_offset: bundleAttributes.frag_offset
> 
> You have to construct the gbofId from these sources.
>   

Ok, I got it working. Though local_id was bundleId
+ creation_ts_seconds which was not so easy to find out.

bundle_report.each {|bundle|
	gid = GbofIdType.new(bundle.source)
	gid.creation_ts = bundle.creation_ts_seconds<<32 
	gid.is_fragment = bundle.is_fragment 
	gid.frag_length = bundle.length
	gid.frag_offset = bundle.frag_offset
	local_id = bundle.bundleid+(bundle.creation_ts_seconds<<32)
	sendObject(bundleAttributeQuery(local_id, gid)) 
}

> > Another question: I saw that the router interface is mentioned in
> > many presentations and is used by SPINDLE, but i couldnt find an
> > implementation. Is there one available to the public?
> >     
> 
> There is an example external router that we wrote at BBN. I think we
> can make it available; I'll check into it.
>   

Thank you 

Date: Thu, 03 Apr 2008 10:03:16 -0400
From: Christopher Small <[email-masked]>
To: Hannes Janetzek <[email-masked]>
Cc: [email-masked]
Subject: Re: [dtn-users] external router protocol question

Hannes Janetzek wrote:
> Hello,
> I am working on an router implementation for DTN2 which uses the
> external router interface. The problem is now with the data contained in
> bundle_report it is not possible to send or to query attributes of
> bundles since these need gbof_id and local_id to be passed to the
> request/query. (The bundle_report is used to load the bundle state
> information when the external router is starting, so it's the only
> pointer one has to the Bundles that reside in the daemon.) Has someone a
> solution for this? To me it seems that gbof_id and local_id should be
> included in b
A bundle_report has a sequence of bundleType in it. Each bundleType has 
bundleAttributes in it.

bundleAttributes has a field "bundleid" which is the local bundle 
identifier.

A gbofIdType consists of a number of fields, which can be found in 
bundleType and bundleAttributes, viz.:

    source EID: bundleType.source
    creation timestamp: bundleAttributes.creation_ts_seconds, 
bundleAttributes.creation_ts_seqno
    is_fragment: bundleAttributes
    frag_length: bundleType.length
    frag_offset: bundleAttributes.frag_offset

You have to construct the gbofId from these sources.

> Another question: I saw that the router interface is mentioned in many
> presentations and is used by SPINDLE, but i couldnt find an
> implementation. Is there one available to the public?
>   

There is an example external router that we wrote at BBN. I think we can 
make it available; I'll check into it.

-- 
Dr. Christopher Small                         617.873.6261 (vox)
Networking Research                           617.873.6091 (fax)
BBN Technologies | MS 6/5C | 10 Moulton St | Cambridge MA, 02138

Date: Thu, 3 Apr 2008 14:53:46 +0200
To: <[email-masked]>
From: Hannes Janetzek <[email-masked]>
Subject: [dtn-users] external router protocol question

Hello,
I am working on an router implementation for DTN2 which uses the
external router interface. The problem is now with the data contained in
bundle_report it is not possible to send or to query attributes of
bundles since these need gbof_id and local_id to be passed to the
request/query. (The bundle_report is used to load the bundle state
information when the external router is starting, so it's the only
pointer one has to the Bundles that reside in the daemon.) Has someone a
solution for this? To me it seems that gbof_id and local_id should be
included in bundle_report entries.

Another question: I saw that the router interface is mentioned in many
presentations and is used by SPINDLE, but i couldnt find an
implementation. Is there one available to the public?

Best Regards,
Hannes Janetzek

From: Michael Demmer <[email-masked]>
To: Delay Tolerant Networking Interest List <[email-masked]>,  dtn-security <[email-masked]>, dtn-users mailing list <[email-masked]>
Date: Wed, 2 Apr 2008 19:19:06 -0700
Subject: Re: [dtn-users] [dtn-interest] list reply-to (was: Re: DTN Time Sync Issues)

Sorry, I should clarify this a bit:

I changed the mailing list configuration so that it does no Reply-To  
munging at all. Any Reply-To headers that are set by the poster are  
left intact, but no Reply-To headers are added by the mailing list  
itself.

-mike

On Apr 2, 2008, at 6:47 PM, Michael Demmer wrote:
>
> Given that no-one seems to prefer the current behavior, I've modified
> the mailing list configuration so that the Reply-To defaults to send
> only to the poster rather than to the whole list.
>
> I've done the same on the dtn-users and dtn-security lists as well.
>
> -mike
>
>
> On Apr 2, 2008, at 6:04 PM, Kevin Fall wrote:
>> I don't really recall having a preference one way or another....
>>
>> - K
>>
>> On Apr 2, 2008, at Apr 212:02 PMPDT, Michael Demmer wrote:
>>
>>>>> Can this behaviour be changed? It's been annoying me for _months_.
>>>>
>>>> I've no problem with that. Anyone else care?
>>>>
>>>> S. (Who doesn't manage the list as it happens.)
>>>
>>> I'd be happy to make the change, as I have access to the list
>>> administrative interface.
>>>
>>> I think I remember that when we set up the list, Kevin had a
>>> preference for the current default behavior, so I'd like to hear his
>>> opinion before making the change. I think he's on vacation this week
>>> so we'll see when he replies.
>>>
>>> -m
>>>
>>>
>>> _______________________________________________
>>> dtn-interest mailing list
>>> [email-masked]
>>> http://maillists.intel-research.net/mailman/listinfo/dtn-interest
>>>
>>
>> _______________________________________________
>> dtn-interest mailing list
>> [email-masked]
>> http://maillists.intel-research.net/mailman/listinfo/dtn-interest
>
> _______________________________________________
> dtn-interest mailing list
> [email-masked]
> http://maillists.intel-research.net/mailman/listinfo/dtn-interest

From: Michael Demmer <[email-masked]>
To: Delay Tolerant Networking Interest List <[email-masked]>
Date: Wed, 2 Apr 2008 18:47:04 -0700
Cc: dtn-security <[email-masked]>, dtn-users mailing list <[email-masked]>
Subject: Re: [dtn-users] [dtn-interest] list reply-to (was: Re: DTN Time Sync Issues)

Given that no-one seems to prefer the current behavior, I've modified  
the mailing list configuration so that the Reply-To defaults to send  
only to the poster rather than to the whole list.

I've done the same on the dtn-users and dtn-security lists as well.

-mike

On Apr 2, 2008, at 6:04 PM, Kevin Fall wrote:
> I don't really recall having a preference one way or another....
>
> - K
>
> On Apr 2, 2008, at Apr 212:02 PMPDT, Michael Demmer wrote:
>
>>>> Can this behaviour be changed? It's been annoying me for _months_.
>>>
>>> I've no problem with that. Anyone else care?
>>>
>>> S. (Who doesn't manage the list as it happens.)
>>
>> I'd be happy to make the change, as I have access to the list
>> administrative interface.
>>
>> I think I remember that when we set up the list, Kevin had a
>> preference for the current default behavior, so I'd like to hear his
>> opinion before making the change. I think he's on vacation this week
>> so we'll see when he replies.
>>
>> -m
>>
>>
>> _______________________________________________
>> dtn-interest mailing list
>> [email-masked]
>> http://maillists.intel-research.net/mailman/listinfo/dtn-interest
>>
>
> _______________________________________________
> dtn-interest mailing list
> [email-masked]
> http://maillists.intel-research.net/mailman/listinfo/dtn-interest

Date: Wed, 02 Apr 2008 13:20:12 -0400
From: Christopher Small <[email-masked]>
To: [email-masked]
Cc: dtn-users mailing list <[email-masked]>
Subject: Re: [dtn-users] External convergence layer bug(?)
Reply-To: dtn-users mailing list <[email-masked]>

Teemu wrote:
> For example, specifying a "link add" command for an external convergence 
> layer in the dtnd configuration file, starting up dtnd, and later 
> starting up the convergence layer adapter leads to the following issues:
>   
This limitation is something we (the authors of the external convergence 
layer support) know about. The RequestAddLink / "link add" needs to come 
in after the convergence layer has already been initialized.

It's not working that way because the confguration file is not a static 
set of configuration options being set, but instead is a file of Tcl 
code that is passed to the command-line interface interpreter and 
interpreted at start-up. )I think cognitive dissonance would be reduced 
if the "configuration file" was called the "startup script" or something 
similar.)

Given this, I'm not sure if I'd classify the behavior you describe as a 
design decision or a bug; it's a consequence of the implementation.

One work-around is to execute the "link add" after the external 
convergence layer is running. A second, which is probably more in the 
spirit of DTN2, is to write your convergence layer so that when it 
starts up it connects to dtnd and sends the "link add" itself (although 
I don't know if this is easily done with the current implementation).

- Chris

-- 
Dr. Christopher Small                         617.873.6261 (vox)
Networking Research                           617.873.6091 (fax)
BBN Technologies | MS 6/5C | 10 Moulton St | Cambridge MA, 02138

Date: Wed, 02 Apr 2008 15:21:20 +0300
From: Teemu <[email-masked]>
To: [email-masked]
Subject: [dtn-users] External convergence layer bug(?)
Reply-To: dtn-users mailing list <[email-masked]>

Hi,

I've been working on an external convergence layer adapter for dtnd and 
came up with issues with the "link add" command. In particular deferring 
  adding the link when the external convergence layer adapter has not 
yet connected does not work correctly.

For example, specifying a "link add" command for an external convergence 
layer in the dtnd configuration file, starting up dtnd, and later 
starting up the convergence layer adapter leads to the following issues:

1.) The convergence layer adapter never receives a RequestAddLink 
request, and therefore never gets some of the link parameters (type, 
peer_eid). However, if a bundle is forwarded to the link, the ECLA does 
receive a RequestOpenLink request for the link (which it doesn't know 
about since it never received RequestAddLink for that link).

2.) Directory for holding the bundles for the link is never created 
(i.e., bundles/protocol-out/link). This leads to the following error:
"Unable to create bundle file link/bundle0" when trying to forward 
bundles to the link.

So it seems like the current implementation assumes that the external 
convergence layer adapter has connected to the dtnd before links can be 
added. I'm not sure if this is a design decision or a bug, but it would 
be very nice to be able to specify the links in the dtnd configuration 
file and only later start up and connect the external convergence layer 
adapter.

Cheers,
-Teemu