Commit de769e24 authored by Ondřej Filip's avatar Ondřej Filip

Skeleton structures and files added.

parent 95eb1dba
/*
* BIRD -- OSPF
*
* (c) 2000 Ondrej Filip <feela@network.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#include "ospf.h"
void
ospf_lsack_tx(struct ospf_neighbor *n)
{
/* FIXME Go on! */
}
void
ospf_lsack_rx(struct ospf_lsack_packet *ps, struct proto *p,
struct ospf_iface *ifa, u16 size)
{
u32 nrid, myrid;
struct ospf_neighbor *n;
struct ospf_lsreq_header *lsh;
int length;
u8 i;
nrid=ntohl(ps->ospf_packet.routerid);
myrid=p->cf->global->router_id;
if((n=find_neigh(ifa, nrid))==NULL)
{
debug("%s: Received lsack from unknown neigbor! (%u)\n", p->name,
nrid);
return ;
}
/* FIXME Go on! */
}
/*
* BIRD -- OSPF
*
* (c) 2000 Ondrej Filip <feela@network.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*
*/
#ifndef _BIRD_OSPF_LSACK_H_
#define _BIRD_OSPF_LSACK_H_
void ospf_lsack_tx(struct ospf_neighbor *n);
void ospf_lsack_rx(struct ospf_lsack_packet *ps, struct proto *p,
struct ospf_iface *ifa, u16 size);
#endif /* _BIRD_OSPF_LSACK_H_ */
......@@ -86,7 +86,7 @@ ospf_lsreq_rx(struct ospf_lsreq_packet *ps, struct proto *p,
if((n=find_neigh(ifa, nrid))==NULL)
{
debug("%s: Received dbdes from unknown neigbor! (%u)\n", p->name,
debug("%s: Received lsreq from unknown neigbor! (%u)\n", p->name,
nrid);
return ;
}
......@@ -99,8 +99,12 @@ ospf_lsreq_rx(struct ospf_lsreq_packet *ps, struct proto *p,
{
DBG("Processing LSA: ID=%u, Type=%u, Router=%u\n", lsh->id, lsh->type,
lsh->rt);
if(ospf_hash_find(n->ifa->oa->gr, lsh->id, lsh->rt, lsh->type)==NULL)
{
ospf_neigh_sm(n,INM_BADLSREQ);
return;
}
/* FIXME Go on */
}
}
/*
* BIRD -- OSPF
*
* (c) 2000 Ondrej Filip <feela@network.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#include "ospf.h"
void
ospf_lsupd_tx(struct ospf_neighbor *n)
{
/* FIXME Go on! */
}
void
ospf_lsupd_rx(struct ospf_lsupd_packet *ps, struct proto *p,
struct ospf_iface *ifa, u16 size)
{
u32 nrid, myrid;
struct ospf_neighbor *n;
struct ospf_lsreq_header *lsh;
int length;
u8 i;
nrid=ntohl(ps->ospf_packet.routerid);
myrid=p->cf->global->router_id;
if((n=find_neigh(ifa, nrid))==NULL)
{
debug("%s: Received lsupd from unknown neigbor! (%u)\n", p->name,
nrid);
return ;
}
/* FIXME Go on! */
}
/*
* BIRD -- OSPF
*
* (c) 2000 Ondrej Filip <feela@network.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*
*/
#ifndef _BIRD_OSPF_LSUPD_H_
#define _BIRD_OSPF_LSUPD_H_
void ospf_lsupd_tx(struct ospf_neighbor *n);
void ospf_lsupd_rx(struct ospf_lsupd_packet *ps, struct proto *p,
struct ospf_iface *ifa, u16 size);
#endif /* _BIRD_OSPF_LSUPD_H_ */
......@@ -246,6 +246,16 @@ struct ospf_lsreq_header {
u32 rt; /* Advertising router */
};
struct ospf_lsupd_packet {
struct ospf_packet ospf_packet;
u32 lsano; /* Number of LSA's */
};
struct ospf_lsack_packet {
struct ospf_packet ospf_packet;
};
struct ospf_neighbor
{
node n;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment