All of lore.kernel.org
 help / color / mirror / Atom feed
* ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR?
@ 2014-04-08 18:26 Heiner Kallweit
  2014-04-08 19:08 ` Heiner Kallweit
  2014-04-08 20:14 ` Hannes Frederic Sowa
  0 siblings, 2 replies; 5+ messages in thread
From: Heiner Kallweit @ 2014-04-08 18:26 UTC (permalink / raw)
  To: netdev

I stumbled accross the fact that inet6_addr_add as well as inet6_addr_modify
consider IFA_F_TEMPORARY whilst inet6_addr_del does not.

My understanding of IFA_F_MANAGETEMPADDR is that it allows userspace applications
to deal with temporary addresses w/o having to create / track (and possibly delete)
each and every temporary address.

This works fine when creating / modifying a global address. However when a
global address is deleted the orphaned temporary addresses remain.
Shouldn't the userspace be able to set IFA_F_MANAGETEMPADDR also for RTM_DELADDR
to signalize that the kernel should delete all related temporary addresses as well?

It would be a rather small extension to manage_tempaddrs to add a "delete" parameter
and set valid_lft=prefered_lft=0 for each temporary address if set.

Sorry if this was discussed before and I miss something.

Rgds,
Heiner

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR?
  2014-04-08 18:26 ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR? Heiner Kallweit
@ 2014-04-08 19:08 ` Heiner Kallweit
  2014-04-08 20:14 ` Hannes Frederic Sowa
  1 sibling, 0 replies; 5+ messages in thread
From: Heiner Kallweit @ 2014-04-08 19:08 UTC (permalink / raw)
  To: netdev

Am 08.04.2014 20:26, schrieb Heiner Kallweit:
> I stumbled accross the fact that inet6_addr_add as well as inet6_addr_modify
> consider IFA_F_TEMPORARY whilst inet6_addr_del does not.
>
> My understanding of IFA_F_MANAGETEMPADDR is that it allows userspace applications
> to deal with temporary addresses w/o having to create / track (and possibly delete)
> each and every temporary address.
>
> This works fine when creating / modifying a global address. However when a
> global address is deleted the orphaned temporary addresses remain.
> Shouldn't the userspace be able to set IFA_F_MANAGETEMPADDR also for RTM_DELADDR
> to signalize that the kernel should delete all related temporary addresses as well?
>
> It would be a rather small extension to manage_tempaddrs to add a "delete" parameter
> and set valid_lft=prefered_lft=0 for each temporary address if set.
>
> Sorry if this was discussed before and I miss something.
>
> Rgds,
> Heiner
>
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
Sorry, there is a typo. Of course IFA_F_MANAGETEMPADDR is meant in the first sentence too.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR?
  2014-04-08 18:26 ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR? Heiner Kallweit
  2014-04-08 19:08 ` Heiner Kallweit
@ 2014-04-08 20:14 ` Hannes Frederic Sowa
  2014-04-09 19:38   ` Heiner Kallweit
  1 sibling, 1 reply; 5+ messages in thread
From: Hannes Frederic Sowa @ 2014-04-08 20:14 UTC (permalink / raw)
  To: Heiner Kallweit; +Cc: netdev, jiri, thaller

[cc Jiri + Thomas]

Hi!

On Tue, Apr 08, 2014 at 08:26:37PM +0200, Heiner Kallweit wrote:
> I stumbled accross the fact that inet6_addr_add as well as inet6_addr_modify
> consider IFA_F_TEMPORARY whilst inet6_addr_del does not.
> 
> My understanding of IFA_F_MANAGETEMPADDR is that it allows userspace applications
> to deal with temporary addresses w/o having to create / track (and possibly delete)
> each and every temporary address.
> 
> This works fine when creating / modifying a global address. However when a
> global address is deleted the orphaned temporary addresses remain.
> Shouldn't the userspace be able to set IFA_F_MANAGETEMPADDR also for RTM_DELADDR
> to signalize that the kernel should delete all related temporary addresses as well?

Sure, that is possible. I guess it was not done already because
inet6_addr_del did not handle IFA_FLAGS at all. But it should be a very
tiny change to pass that flag down. Please submit an iproute patch along
with your changes.

> It would be a rather small extension to manage_tempaddrs to add a "delete" parameter
> and set valid_lft=prefered_lft=0 for each temporary address if set.

I think valid_lft=prefered_lft=0; manage_tempaddr(...);
addrconf_verify_rtnl(); is enough to clean up the old temporary address.
No need for a further flag.

> Sorry if this was discussed before and I miss something.

I don't remember a discussion about that. ;)

Bye,

  Hannes

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR?
  2014-04-08 20:14 ` Hannes Frederic Sowa
@ 2014-04-09 19:38   ` Heiner Kallweit
  2014-04-09 20:36     ` Hannes Frederic Sowa
  0 siblings, 1 reply; 5+ messages in thread
From: Heiner Kallweit @ 2014-04-09 19:38 UTC (permalink / raw)
  To: Hannes Frederic Sowa; +Cc: netdev

Am 08.04.2014 22:14, schrieb Hannes Frederic Sowa:
> [cc Jiri + Thomas]
>
> Hi!
>
> On Tue, Apr 08, 2014 at 08:26:37PM +0200, Heiner Kallweit wrote:
>> I stumbled accross the fact that inet6_addr_add as well as inet6_addr_modify
>> consider IFA_F_TEMPORARY whilst inet6_addr_del does not.
>>
>> My understanding of IFA_F_MANAGETEMPADDR is that it allows userspace applications
>> to deal with temporary addresses w/o having to create / track (and possibly delete)
>> each and every temporary address.
>>
>> This works fine when creating / modifying a global address. However when a
>> global address is deleted the orphaned temporary addresses remain.
>> Shouldn't the userspace be able to set IFA_F_MANAGETEMPADDR also for RTM_DELADDR
>> to signalize that the kernel should delete all related temporary addresses as well?
> Sure, that is possible. I guess it was not done already because
> inet6_addr_del did not handle IFA_FLAGS at all. But it should be a very
> tiny change to pass that flag down. Please submit an iproute patch along
> with your changes.
After a brief look at the source code of iproute2 it seems like "ip addr del" already supports sending
IFA_F_MANAGETEMPADDR with RTM_DELADDR, though I have the impression it's unintentional.

The del command internally calls ipaddr_modify just like add / change / replace.
And ipaddr_modify happily populates every flag provided on the command line w/o checking whether
the flag is applicable for the respective command.

Having said this only the usage info needs to be extended.
Not sure: Should the related patch go to this mailing list or to Stephen directly who seems to be the
current maintainer.

>> It would be a rather small extension to manage_tempaddrs to add a "delete" parameter
>> and set valid_lft=prefered_lft=0 for each temporary address if set.
> I think valid_lft=prefered_lft=0; manage_tempaddr(...);
> addrconf_verify_rtnl(); is enough to clean up the old temporary address.
> No need for a further flag.
Right .. Will prepare a patch.

>
>> Sorry if this was discussed before and I miss something.
> I don't remember a discussion about that. ;)
>
> Bye,
>
>   Hannes
>
Rgds, Heiner

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR?
  2014-04-09 19:38   ` Heiner Kallweit
@ 2014-04-09 20:36     ` Hannes Frederic Sowa
  0 siblings, 0 replies; 5+ messages in thread
From: Hannes Frederic Sowa @ 2014-04-09 20:36 UTC (permalink / raw)
  To: Heiner Kallweit; +Cc: netdev

On Wed, Apr 09, 2014 at 09:38:27PM +0200, Heiner Kallweit wrote:
> Am 08.04.2014 22:14, schrieb Hannes Frederic Sowa:
> > [cc Jiri + Thomas]
> >
> > Hi!
> >
> > On Tue, Apr 08, 2014 at 08:26:37PM +0200, Heiner Kallweit wrote:
> >> I stumbled accross the fact that inet6_addr_add as well as inet6_addr_modify
> >> consider IFA_F_TEMPORARY whilst inet6_addr_del does not.
> >>
> >> My understanding of IFA_F_MANAGETEMPADDR is that it allows userspace applications
> >> to deal with temporary addresses w/o having to create / track (and possibly delete)
> >> each and every temporary address.
> >>
> >> This works fine when creating / modifying a global address. However when a
> >> global address is deleted the orphaned temporary addresses remain.
> >> Shouldn't the userspace be able to set IFA_F_MANAGETEMPADDR also for RTM_DELADDR
> >> to signalize that the kernel should delete all related temporary addresses as well?
> > Sure, that is possible. I guess it was not done already because
> > inet6_addr_del did not handle IFA_FLAGS at all. But it should be a very
> > tiny change to pass that flag down. Please submit an iproute patch along
> > with your changes.
> After a brief look at the source code of iproute2 it seems like "ip addr del" already supports sending
> IFA_F_MANAGETEMPADDR with RTM_DELADDR, though I have the impression it's unintentional.
> 
> The del command internally calls ipaddr_modify just like add / change / replace.
> And ipaddr_modify happily populates every flag provided on the command line w/o checking whether
> the flag is applicable for the respective command.
> 
> Having said this only the usage info needs to be extended.
> Not sure: Should the related patch go to this mailing list or to Stephen directly who seems to be the
> current maintainer.

iproute patches are handled the same way as kernel patches on this mailing
list. Cc Stephen wouldn't hurt either. ;)

Bye,

  Hannes

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-04-09 20:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-08 18:26 ipv6: Should inet6_addr_del consider IFA_F_MANAGETEMPADDR? Heiner Kallweit
2014-04-08 19:08 ` Heiner Kallweit
2014-04-08 20:14 ` Hannes Frederic Sowa
2014-04-09 19:38   ` Heiner Kallweit
2014-04-09 20:36     ` Hannes Frederic Sowa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.