advertise questions

When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how is it
used…

What is a link-level address…

And what values do you use in your npkt for cell, endpoint and iface for the
advertise packet…

“Jay Witherspoon” <spoon@scubadiving.com> wrote in message
news:alqbfn$cgs$1@inn.qnx.com

When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how is
it
used…

What is a link-level address…

Do you have a copy of the network ddk?

The advertise function in the pcnet driver shows what you need.

From memory:
Cell & Lan are values returned to you by io-net when you register the device.

Iface is used when you have a driver that handles multiple interfaces at
once. Generally it’s set to 0.

Regards

Dave

Jay Witherspoon wrote:

And what values do you use in your npkt for cell, endpoint and iface for the
advertise packet…

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …

When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how is

it

used…

What is a link-level address…

\

Any info on my questions about the interface name form sockaddr_dl? Is this
was becomes the name under /dev/io-net? For example, if I set interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <spoon@scubadiving.com> wrote in message
news:alqbfn$cgs$1@inn.qnx.com

When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how is
it
used…

What is a link-level address…

io-net creates the /dev/io-net/X entry based on your REG type
and io_net_registrant_t.top_type / io_net_registrant_t.bot_type.

The sockaddr_dl is to inform those above you (the stack) about
yourself. Generally, the form of the names should match.

-seanb

Jay Witherspoon <spoon@scubadiving.com> wrote:

Any info on my questions about the interface name form sockaddr_dl? Is this
was becomes the name under /dev/io-net? For example, if I set interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …
When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how is
it
used…

What is a link-level address…

Sean, thanks.

If I am an producer_up and have a top binding of “ip” and a bottom of NULL,
what will the name end up being…

“Sean Boudreau” <seanb@node25.ott.qnx.com> wrote in message
news:alsnjc$5f7$1@nntp.qnx.com

io-net creates the /dev/io-net/X entry based on your REG type
and io_net_registrant_t.top_type / io_net_registrant_t.bot_type.

The sockaddr_dl is to inform those above you (the stack) about
yourself. Generally, the form of the names should match.

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Any info on my questions about the interface name form sockaddr_dl? Is
this
was becomes the name under /dev/io-net? For example, if I set interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …
When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how
is
it
used…

What is a link-level address…
\

/dev/io-net/ipX where X is the endpoint io-net returns
out of ion->reg() (lowest unused entry).

-seanb

Jay Witherspoon <spoon@scubadiving.com> wrote:

Sean, thanks.

If I am an producer_up and have a top binding of “ip” and a bottom of NULL,
what will the name end up being…

“Sean Boudreau” <> seanb@node25.ott.qnx.com> > wrote in message
news:alsnjc$5f7$> 1@nntp.qnx.com> …

io-net creates the /dev/io-net/X entry based on your REG type
and io_net_registrant_t.top_type / io_net_registrant_t.bot_type.

The sockaddr_dl is to inform those above you (the stack) about
yourself. Generally, the form of the names should match.

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Any info on my questions about the interface name form sockaddr_dl? Is
this
was becomes the name under /dev/io-net? For example, if I set interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …
When doing the advertise, inside the sockaddr_dl structure, you pass an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and how
is
it
used…

What is a link-level address…
\

Is there a way to have a custom name like “mnc0” with a single producer_up?
Seems like that would require a converter to go from the “mnc” to the
“ip”… And since I am really handling “ip” packets in the producer_up, the
converter would really just pass through? Or is there a way to define the
top binding as “mnc” and have io-net consider it “ip” without the converter?
My goal is to get a custom interface type with a single producer_up.

“Sean Boudreau” <seanb@node25.ott.qnx.com> wrote in message
news:alt6rn$nq3$1@nntp.qnx.com

/dev/io-net/ipX where X is the endpoint io-net returns
out of ion->reg() (lowest unused entry).

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Sean, thanks.

If I am an producer_up and have a top binding of “ip” and a bottom of
NULL,
what will the name end up being…

“Sean Boudreau” <> seanb@node25.ott.qnx.com> > wrote in message
news:alsnjc$5f7$> 1@nntp.qnx.com> …

io-net creates the /dev/io-net/X entry based on your REG type
and io_net_registrant_t.top_type / io_net_registrant_t.bot_type.

The sockaddr_dl is to inform those above you (the stack) about
yourself. Generally, the form of the names should match.

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Any info on my questions about the interface name form sockaddr_dl?
Is
this
was becomes the name under /dev/io-net? For example, if I set
interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …
When doing the advertise, inside the sockaddr_dl structure, you pass
an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and
how
is
it
used…

What is a link-level address…


\

Jay Witherspoon <spoon@scubadiving.com> wrote:

Is there a way to have a custom name like “mnc0” with a single producer_up?
Seems like that would require a converter to go from the “mnc” to the
“ip”… And since I am really handling “ip” packets in the producer_up, the
converter would really just pass through? Or is there a way to define the
top binding as “mnc” and have io-net consider it “ip” without the converter?
My goal is to get a custom interface type with a single producer_up.

You MUST have a converter. What you CAN do is:

io_net_retgistrant_t p_mnc = {
_REG_PRODUCER_UP, “mnc.so”, “mnc”, “mnc”, … };
io_net_retgistrant_t c_mnc = {
_REG_CONVERTOR_UP, “mnc.so”, “ip”, “mnc”, … };

int reg_p_mnc, reg_c_mnc;

mnc_entry()
{
n->reg(dll_hdl, &p_mnc, &reg_p_mnc, …);
n->reg(dll_hdl, &c_mnc, &reg_c_mnc, …);

/* build advertise npkt here */
n->tx_up(c_mnc, npkt, …);
}

Note you call “tx_up” with “c_mnc”, this “bypass” the converter and give
npkt direct to stack…

-xtang

“Sean Boudreau” <> seanb@node25.ott.qnx.com> > wrote in message
news:alt6rn$nq3$> 1@nntp.qnx.com> …

/dev/io-net/ipX where X is the endpoint io-net returns
out of ion->reg() (lowest unused entry).

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Sean, thanks.

If I am an producer_up and have a top binding of “ip” and a bottom of
NULL,
what will the name end up being…

“Sean Boudreau” <> seanb@node25.ott.qnx.com> > wrote in message
news:alsnjc$5f7$> 1@nntp.qnx.com> …

io-net creates the /dev/io-net/X entry based on your REG type
and io_net_registrant_t.top_type / io_net_registrant_t.bot_type.

The sockaddr_dl is to inform those above you (the stack) about
yourself. Generally, the form of the names should match.

-seanb

Jay Witherspoon <> spoon@scubadiving.com> > wrote:
Any info on my questions about the interface name form sockaddr_dl?
Is
this
was becomes the name under /dev/io-net? For example, if I set
interface
name to mnc1, would it create /dev/io-net/mnc1?

“Jay Witherspoon” <> spoon@scubadiving.com> > wrote in message
news:alqbfn$cgs$> 1@inn.qnx.com> …
When doing the advertise, inside the sockaddr_dl structure, you pass
an
interface name and a link-level address…

How is the interface name determined (do I make something up?) and
how
is
it
used…

What is a link-level address…


\