<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tteras/strongswan/src/libhydra/kernel, branch master</title>
<subtitle>tteras' strongSwan tree
</subtitle>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/'/>
<entry>
<title>libhydra: Move kernel interface to libcharon</title>
<updated>2016-03-03T16:36:11+00:00</updated>
<author>
<name>Tobias Brunner</name>
<email>tobias@strongswan.org</email>
</author>
<published>2016-02-12T14:30:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=8394ea2a42eb23ba22471d913dcf47e6067109e1'/>
<id>8394ea2a42eb23ba22471d913dcf47e6067109e1</id>
<content type='text'>
This moves hydra-&gt;kernel_interface to charon-&gt;kernel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This moves hydra-&gt;kernel_interface to charon-&gt;kernel.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Pass the same data to del_policy() that was passed to add_policy()</title>
<updated>2015-11-10T15:42:52+00:00</updated>
<author>
<name>Tobias Brunner</name>
<email>tobias@strongswan.org</email>
</author>
<published>2015-09-16T14:44:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=a6e0f14fd2bf8b23fbfd808acc595e97d5e23a49'/>
<id>a6e0f14fd2bf8b23fbfd808acc595e97d5e23a49</id>
<content type='text'>
The additional data can be helpful to identify the exact policy to
delete.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The additional data can be helpful to identify the exact policy to
delete.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Return bool for kernel interface registration</title>
<updated>2015-11-10T14:40:14+00:00</updated>
<author>
<name>Thomas Egerer</name>
<email>thomas.egerer@secunet.com</email>
</author>
<published>2015-10-06T09:02:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=db61c37690b5bd1c9d157ad7a91d3a6a0b8684bc'/>
<id>db61c37690b5bd1c9d157ad7a91d3a6a0b8684bc</id>
<content type='text'>
If the (un)registering of a kernel interface (net or ipsec) fails, the
plugin loader will never know, since the appropriate functions always
returns TRUE.  By making the (un)register functions return a boolean
value, the loader can detect a failure during initializing the kernel
interface and abort charon startup if desired.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the (un)registering of a kernel interface (net or ipsec) fails, the
plugin loader will never know, since the appropriate functions always
returns TRUE.  By making the (un)register functions return a boolean
value, the loader can detect a failure during initializing the kernel
interface and abort charon startup if desired.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Add a separate "update" flag to add_sa()</title>
<updated>2015-03-09T17:18:20+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2015-03-09T17:04:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=942797a5b5176c43670232ffb8686bc347b8cda9'/>
<id>942797a5b5176c43670232ffb8686bc347b8cda9</id>
<content type='text'>
The current "inbound" flag is used for two purposes: To define the actual
direction of the SA, but also to determine the operation used for SA
installation. If an SPI has been allocated, an update operation is required
instead of an add.

While the inbound flag normally defines the kind of operation required, this
is not necessarily true in all cases. On the HA passive node, we install inbound
SAs without prior SPI allocation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current "inbound" flag is used for two purposes: To define the actual
direction of the SA, but also to determine the operation used for SA
installation. If an SPI has been allocated, an update operation is required
instead of an add.

While the inbound flag normally defines the kind of operation required, this
is not necessarily true in all cases. On the HA passive node, we install inbound
SAs without prior SPI allocation.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Raise mapping event with a proto/SPI/dst tuple</title>
<updated>2015-02-20T12:34:51+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-10-27T14:38:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=b125839a1a174936624ad99765ea451c55834a70'/>
<id>b125839a1a174936624ad99765ea451c55834a70</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Raise expires with a proto/SPI/dst tuple instead of reqid</title>
<updated>2015-02-20T12:34:50+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-10-27T14:07:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=f81a9497483a7282c11adf5705d9ea3e83f6fffd'/>
<id>f81a9497483a7282c11adf5705d9ea3e83f6fffd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>child-sa: Replace reqid based marks by "unique" marks</title>
<updated>2015-02-20T12:34:49+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-11-13T14:26:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=85b238887d01c030a7d9240db2031601211a6283'/>
<id>85b238887d01c030a7d9240db2031601211a6283</id>
<content type='text'>
As we now use the same reqid for multiple CHILD_SAs with the same selectors,
having marks based on the reqid makes not that much sense anymore. Instead we
use unique marks that use a custom identifier. This identifier is reused during
rekeying, keeping the marks constant for any rule relying on it (for example
installed by updown).

This also simplifies handling of reqid allocation, as we do not have to query
the marks that is not yet assigned for an unknown reqid.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As we now use the same reqid for multiple CHILD_SAs with the same selectors,
having marks based on the reqid makes not that much sense anymore. Instead we
use unique marks that use a custom identifier. This identifier is reused during
rekeying, keeping the marks constant for any rule relying on it (for example
installed by updown).

This also simplifies handling of reqid allocation, as we do not have to query
the marks that is not yet assigned for an unknown reqid.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Add reqid allocation and release functions</title>
<updated>2015-02-20T12:34:49+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-11-12T16:22:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=cc08ce83f06d2158b5306b6f15a2701873fd8c3f'/>
<id>cc08ce83f06d2158b5306b6f15a2701873fd8c3f</id>
<content type='text'>
To reassign reqids where appropriate, we explicitly allocate or confirm them
centrally on the kernel-interface.

Currently the state is stored in the kernel-interface wrapper for all
backends, but we may add appropriate methods to each backend to implement
a custom reqid allocation logic, if required.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To reassign reqids where appropriate, we explicitly allocate or confirm them
centrally on the kernel-interface.

Currently the state is stored in the kernel-interface wrapper for all
backends, but we may add appropriate methods to each backend to implement
a custom reqid allocation logic, if required.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Pass full list of traffic selectors to add_sa()</title>
<updated>2015-02-20T12:34:47+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-10-15T16:03:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=d05d85fe658321aff8d859eaf50704a21299b683'/>
<id>d05d85fe658321aff8d859eaf50704a21299b683</id>
<content type='text'>
While we can handle the first selector only in BEET mode in kernel-netlink,
passing the full list gives the backend more flexibility how to handle this
information.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
While we can handle the first selector only in BEET mode in kernel-netlink,
passing the full list gives the backend more flexibility how to handle this
information.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel-interface: Remove reqid parameter from get_spi/get_cpi() methods</title>
<updated>2015-02-20T12:34:32+00:00</updated>
<author>
<name>Martin Willi</name>
<email>martin@revosec.ch</email>
</author>
<published>2014-10-15T15:22:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/strongswan/commit/?id=2a1c9e20bd38572ba32ba57436d7064192680729'/>
<id>2a1c9e20bd38572ba32ba57436d7064192680729</id>
<content type='text'>
The reqid is not strictly required, as we set the reqid with the update
call when installing the negotiated SA.

If we don't need a reqid at this stage, we can later allocate the reqid in
the kernel backend once the SA parameters have been fully negotaited. This
allows us to assign the same reqid for the same selectors to avoid conflicts
on backends this is necessary.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The reqid is not strictly required, as we set the reqid with the update
call when installing the negotiated SA.

If we don't need a reqid at this stage, we can later allocate the reqid in
the kernel backend once the SA parameters have been fully negotaited. This
allows us to assign the same reqid for the same selectors to avoid conflicts
on backends this is necessary.
</pre>
</div>
</content>
</entry>
</feed>
