On 05/13/10 05:08 AM, [email protected] wrote:
On (05/12/10 22:52), Girish Moodalbail wrote:

  If the daemon associated with the ip-interface-management service is used to
  configure above addresses on zone boot and address object names were not
  explicitly provided then an address object name will be generated for that
  address by the daemon.

  Therefore in your examples above you will never see '?' and instead you will
  see address object names, starting with '_', such as vnic0/_a, vnic0/_b, et
  al. So the example above has to be corrected.

Actually  no.

this is deep into implementation details,
but since ipmgmtd is calling
libipadm, and we don't want to recurse back into libipadm for name-space
verification (this is done early on, before any doors are set up so
that no other application can invoke ipmgmtd), whether an addrobj name
is provided or not is an implementation choice. We could either

1. have ipmgmtd provide an addrobj name, in which case it would have to
    make function calls to set up the addrobj names

2. not provide any name at all.

In either case the library has to be modified to not recurse back into
libipadm, which is ok, since this particular configuration method
is guaranteed to have no ipadm name-space collision.

I've chosen #2 but we could revisit #1 when code review comes around.
I don't think this impacts ARC review though.

ipadm(1M) is going to be new ifconfig(1M) and should be used to manage addresses and IP interfaces, going forward. To manage addresses using ipadm(1M), they need to have clearly defined names (either user provided or daemon generated), if not one cannot perform
        * disable-addr
        * enable-addr
        * set-addrprop
        * reset-addrprop
        * show-addrprop
        * delete-addr

With the choice made, the address added in the exclusive-ip zone cannot be managed at all. How do you propose to manage that address? Therefore I think it's not an implementation detail but is related to architecture.

Further, the daemon is the one that manages namespace and generates unique names. The library libipadm is just a vehicle to retrieve the name. Since you will be creating addresses from within ipmgmtd, you can directly access those API's and create a name.

~Girish
_______________________________________________
opensolaris-arc mailing list
[email protected]

Reply via email to