Browse Source

[5368] Documented ia_pd parameter for lease_renew/lease_rebind hooks.

Marcin Siodelski 7 years ago
parent
commit
7d6861a7b8
1 changed files with 30 additions and 24 deletions
  1. 30 24
      src/bin/dhcp6/dhcp6_hooks.dox

+ 30 - 24
src/bin/dhcp6/dhcp6_hooks.dox

@@ -157,14 +157,16 @@ to the end of this list.
  - @b Arguments:
  - @b Arguments:
    - name: @b query6, type: isc::dhcp::PktPtr, direction: <b>in</b>
    - name: @b query6, type: isc::dhcp::PktPtr, direction: <b>in</b>
    - name: @b lease6, type: isc::dhcp::Lease6Ptr, direction: <b>in/out</b>
    - name: @b lease6, type: isc::dhcp::Lease6Ptr, direction: <b>in/out</b>
-   - name: @b ia_na, type: boost::shared_ptr<Option6IA>, direction: <b>in/out</b>
+   - name: @b ia_na, type: isc::dhcp::Option6IAPtr direction: <b>in/out</b>
+   - name: @b ia_pd, type: isc::dhcp::Option6IAPtr, direction: <b>in/out</b>
 
 
  - @b Description: This callout is executed when the server engine is
  - @b Description: This callout is executed when the server engine is
    about to renew an existing lease. The client's request is provided as
    about to renew an existing lease. The client's request is provided as
    the "query6" argument and the existing lease with the appropriate fields
    the "query6" argument and the existing lease with the appropriate fields
-   already modified is given in the "lease6" argument. The final argument,
+   already modified is given in the "lease6" argument. The remaining two
-   ia_na, is the IA_NA option that will be sent back to the client.
+   arguments, "ia_na" and "ia_pd", are mutually exclusive and they provide
-   Callouts installed on the "lease6_renew" may modify the content of
+   pointers to the IA_NA or IA_PD option which will be sent back to the
+   client. Callouts installed on the "lease6_renew" may modify the content of
    the "lease6" object. Care should be taken however, as that modified
    the "lease6" object. Care should be taken however, as that modified
    information will be written to the database without any further
    information will be written to the database without any further
    checking. \n\n Although the envisaged usage assumes modification of T1,
    checking. \n\n Although the envisaged usage assumes modification of T1,
@@ -172,31 +174,34 @@ to the end of this list.
    with the lease may be modified as well. The only exception is the @c addr_
    with the lease may be modified as well. The only exception is the @c addr_
    field, which must not be modified as it is used by the database to
    field, which must not be modified as it is used by the database to
    select the existing lease to be updated. Care should also be taken to
    select the existing lease to be updated. Care should also be taken to
-   modify the "ia_na" argument to match any changes in the "lease6" argument.
+   modify the "ia_na" and "ia_pd" arguments to match any changes in the
-   If a client sends more than one IA_NA option, callouts will be called
+   "lease6" argument. If a client sends more than one IA (IA_NA/IA_PD)
-   separately for each IA_NA instance. The callout will be called only
+   option, callouts will be called separately for each IA instance. The
-   when the update is valid, i.e. conditions such as an invalid addresses
+   callout will be called only when the update is valid, i.e. conditions
-   or invalid iaid renewal attempts will not trigger this hook point.
+   such as an invalid addresses or invalid iaid renewal attempts will
+   not trigger this hook point.
 
 
  - <b>Next step status</b>: If any callout installed on "lease6_renew"
  - <b>Next step status</b>: If any callout installed on "lease6_renew"
    sets the status to SKIP, the server will not renew the lease. Under these
    sets the status to SKIP, the server will not renew the lease. Under these
-   circumstances, the callout should modify the "ia_na" argument to reflect
+   circumstances, the callout should modify the "ia_na" or "ia_pd"
-   this fact; otherwise the client will think the lease was renewed and continue
+   argument to reflect this fact; otherwise the client will think the
-   to operate under this assumption.
+   lease was renewed and continue to operate under this assumption.
 
 
 @subsection dhcpv6HooksLease6Rebind lease6_rebind
 @subsection dhcpv6HooksLease6Rebind lease6_rebind
 
 
  - @b Arguments:
  - @b Arguments:
    - name: @b query6, type: isc::dhcp::PktPtr, direction: <b>in</b>
    - name: @b query6, type: isc::dhcp::PktPtr, direction: <b>in</b>
    - name: @b lease6, type: isc::dhcp::Lease6Ptr, direction: <b>in/out</b>
    - name: @b lease6, type: isc::dhcp::Lease6Ptr, direction: <b>in/out</b>
-   - name: @b ia_na, type: boost::shared_ptr<Option6IA>, direction: <b>in/out</b>
+   - name: @b ia_na, type: isc::dhcp::Option6IAPtr direction: <b>in/out</b>
+   - name: @b ia_pd, type: isc::dhcp::Option6IAPtr, direction: <b>in/out</b>
 
 
  - @b Description: This callout is executed when the server engine is
  - @b Description: This callout is executed when the server engine is
    about to rebind an existing lease. The client's request is provided as
    about to rebind an existing lease. The client's request is provided as
    the "query6" argument and the existing lease with the appropriate fields
    the "query6" argument and the existing lease with the appropriate fields
-   already modified is given in the "lease6" argument. The final argument,
+   already modified is given in the "lease6" argument. The remaining two
-   ia_na, is the IA_NA option that will be sent back to the client.
+   arguments, "ia_na" and "ia_pd", are mutually exclusive and they provide
-   Callouts installed on the "lease6_rebind" may modify the content of
+   pointers to the IA_NA or IA_PD option which will be sent back to the
+   client. Callouts installed on the "lease6_renew" may modify the content of
    the "lease6" object. Care should be taken however, as that modified
    the "lease6" object. Care should be taken however, as that modified
    information will be written to the database without any further
    information will be written to the database without any further
    checking. \n\n Although the envisaged usage assumes modification of T1,
    checking. \n\n Although the envisaged usage assumes modification of T1,
@@ -204,17 +209,18 @@ to the end of this list.
    with the lease may be modified as well. The only exception is the @c addr_
    with the lease may be modified as well. The only exception is the @c addr_
    field, which must not be modified as it is used by the database to
    field, which must not be modified as it is used by the database to
    select the existing lease to be updated. Care should also be taken to
    select the existing lease to be updated. Care should also be taken to
-   modify the "ia_na" argument to match any changes in the "lease6" argument.
+   modify the "ia_na" and "ia_pd" arguments to match any changes in the
-   If a client sends more than one IA_NA option, callouts will be called
+   "lease6" argument. If a client sends more than one IA (IA_NA/IA_PD)
-   separately for each IA_NA instance. The callout will be called only
+   option, callouts will be called separately for each IA instance. The
-   when the update is valid, i.e. conditions such as an invalid addresses
+   callout will be called only when the update is valid, i.e. conditions
-   or invalid iaid rebinding attempts will not trigger this hook point.
+   such as an invalid addresses or invalid iaid renewal attempts will
+   not trigger this hook point.
 
 
  - <b>Next step status</b>: If any callout installed on "lease6_rebind"
  - <b>Next step status</b>: If any callout installed on "lease6_rebind"
    sets the status to SKIP, the server will not rebind the lease. Under these
    sets the status to SKIP, the server will not rebind the lease. Under these
-   circumstances, the callout should modify the "ia_na" argument to reflect
+   circumstances, the callout should modify the "ia_na" or "ia_pd"
-   this fact; otherwise the client will think the lease was rebound and continue
+   argument to reflect this fact; otherwise the client will think the
-   to operate under this assumption.
+   lease was rebound and continue to operate under this assumption.
 
 
 @subsection dhcpv6HooksLease6Decline lease6_decline
 @subsection dhcpv6HooksLease6Decline lease6_decline