Ejemplo n.º 1
0
 def _api_handle_as_request(self, request, meta):
     remote_as = request.isd_as()
     if remote_as:
         reply_entry = SCIONDASInfoReplyEntry.from_values(
             remote_as, self.is_core_as(remote_as))
     else:
         reply_entry = SCIONDASInfoReplyEntry.from_values(
             self.addr.isd_as, self.is_core_as(), self.topology.mtu)
     as_reply = SCIONDASInfoReply.from_values(request.id, [reply_entry])
     self.send_meta(as_reply.pack_full(), meta)
Ejemplo n.º 2
0
 def _api_handle_as_request(self, pld, meta):
     request = pld.union
     assert isinstance(request, SCIONDASInfoRequest), type(request)
     req_ia = request.isd_as()
     if not req_ia or req_ia.is_zero() or req_ia == self.addr.isd_as:
         # Request is for the local AS.
         reply_entry = SCIONDASInfoReplyEntry.from_values(
             self.addr.isd_as, self.is_core_as(), self.topology.mtu)
     else:
         # Request is for a remote AS.
         reply_entry = SCIONDASInfoReplyEntry.from_values(req_ia, self.is_core_as(req_ia))
     as_reply = SCIONDMsg(SCIONDASInfoReply.from_values([reply_entry]), pld.id)
     self.send_meta(as_reply.pack(), meta)
Ejemplo n.º 3
0
 def _api_handle_as_request(self, pld, meta):
     request = pld.union
     assert isinstance(request, SCIONDASInfoRequest), type(request)
     remote_as = request.isd_as()
     if remote_as:
         reply_entry = SCIONDASInfoReplyEntry.from_values(
             remote_as, self.is_core_as(remote_as))
     else:
         reply_entry = SCIONDASInfoReplyEntry.from_values(
             self.addr.isd_as, self.is_core_as(), self.topology.mtu)
     as_reply = SCIONDMsg(SCIONDASInfoReply.from_values([reply_entry]),
                          pld.id)
     self.send_meta(as_reply.pack(), meta)
Ejemplo n.º 4
0
 def _api_handle_as_request(self, request, meta):
     reply_entry = SCIONDASInfoReplyEntry.from_values(
         self.addr.isd_as, self.topology.mtu, self.is_core_as())
     as_reply = SCIONDASInfoReply.from_values([reply_entry])
     self.send_meta(as_reply.pack_full(), meta)