<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/linux/tpm_command.h, branch linux-3.2.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.2.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.2.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2010-11-28T21:55:25Z</updated>
<entry>
<title>keys: add new trusted key-type</title>
<updated>2010-11-28T21:55:25Z</updated>
<author>
<name>Mimi Zohar</name>
<email>zohar@linux.vnet.ibm.com</email>
</author>
<published>2010-11-23T22:50:34Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d00a1c72f7f4661212299e6cb132dfa58030bcdb'/>
<id>urn:sha1:d00a1c72f7f4661212299e6cb132dfa58030bcdb</id>
<content type='text'>
Define a new kernel key-type called 'trusted'.  Trusted keys are random
number symmetric keys, generated and RSA-sealed by the TPM.  The TPM
only unseals the keys, if the boot PCRs and other criteria match.
Userspace can only ever see encrypted blobs.

Based on suggestions by Jason Gunthorpe, several new options have been
added to support additional usages.

The new options are:
migratable=  designates that the key may/may not ever be updated
             (resealed under a new key, new pcrinfo or new auth.)

pcrlock=n    extends the designated PCR 'n' with a random value,
             so that a key sealed to that PCR may not be unsealed
             again until after a reboot.

keyhandle=   specifies the sealing/unsealing key handle.

keyauth=     specifies the sealing/unsealing key auth.

blobauth=    specifies the sealed data auth.

Implementation of a kernel reserved locality for trusted keys will be
investigated for a possible future extension.

Changelog:
- Updated and added examples to Documentation/keys-trusted-encrypted.txt
- Moved generic TPM constants to include/linux/tpm_command.h
  (David Howell's suggestion.)
- trusted_defined.c: replaced kzalloc with kmalloc, added pcrlock failure
  error handling, added const qualifiers where appropriate.
- moved to late_initcall
- updated from hash to shash (suggestion by David Howells)
- reduced worst stack usage (tpm_seal) from 530 to 312 bytes
- moved documentation to Documentation directory (suggestion by David Howells)
- all the other code cleanups suggested by David Howells
- Add pcrlock CAP_SYS_ADMIN dependency (based on comment by Jason Gunthorpe)
- New options: migratable, pcrlock, keyhandle, keyauth, blobauth (based on
  discussions with Jason Gunthorpe)
- Free payload on failure to create key(reported/fixed by Roberto Sassu)
- Updated Kconfig and other descriptions (based on Serge Hallyn's suggestion)
- Replaced kzalloc() with kmalloc() (reported by Serge Hallyn)

Signed-off-by: David Safford &lt;safford@watson.ibm.com&gt;
Signed-off-by: Mimi Zohar &lt;zohar@us.ibm.com&gt;
Signed-off-by: James Morris &lt;jmorris@namei.org&gt;
</content>
</entry>
</feed>
inux-3.13.y</option>
<option value='linux-3.14.y'>linux-3.14.y</option>
<option value='linux-3.15.y'>linux-3.15.y</option>
<option value='linux-3.16.y'>linux-3.16.y</option>
<option value='linux-3.17.y'>linux-3.17.y</option>
<option value='linux-3.18.y'>linux-3.18.y</option>
<option value='linux-3.19.y'>linux-3.19.y</option>
<option value='linux-3.2.y'>linux-3.2.y</option>
<option value='linux-3.3.y'>linux-3.3.y</option>
<option value='linux-3.4.y'>linux-3.4.y</option>
<option value='linux-3.5.y'>linux-3.5.y</option>
<option value='linux-3.6.y'>linux-3.6.y</option>
<option value='linux-3.7.y'>linux-3.7.y</option>
<option value='linux-3.8.y'>linux-3.8.y</option>
<option value='linux-3.9.y'>linux-3.9.y</option>
<option value='linux-4.0.y'>linux-4.0.y</option>
<option value='linux-4.1.y'>linux-4.1.y</option>
<option value='linux-4.10.y'>linux-4.10.y</option>
<option value='linux-4.11.y'>linux-4.11.y</option>
<option value='linux-4.12.y'>linux-4.12.y</option>
<option value='linux-4.13.y'>linux-4.13.y</option>
<option value='linux-4.14.y'>linux-4.14.y</option>
<option value='linux-4.15.y'>linux-4.15.y</option>
<option value='linux-4.16.y'>linux-4.16.y</option>
<option value='linux-4.17.y'>linux-4.17.y</option>
<option value='linux-4.18.y'>linux-4.18.y</option>
<option value='linux-4.19.y'>linux-4.19.y</option>
<option value='linux-4.2.y'>linux-4.2.y</option>
<option value='linux-4.20.y'>linux-4.20.y</option>
<option value='linux-4.3.y'>linux-4.3.y</option>
<option value='linux-4.4.y'>linux-4.4.y</option>
<option value='linux-4.5.y'>linux-4.5.y</option>
<option value='linux-4.6.y'>linux-4.6.y</option>
<option value='linux-4.7.y'>linux-4.7.y</option>
<option value='linux-4.8.y'>linux-4.8.y</option>
<option value='linux-4.9.y'>linux-4.9.y</option>
<option value='linux-5.0.y'>linux-5.0.y</option>
<option value='linux-5.1.y'>linux-5.1.y</option>
<option value='linux-5.10.y'>linux-5.10.y</option>
<option value='linux-5.11.y'>linux-5.11.y</option>
<option value='linux-5.12.y'>linux-5.12.y</option>
<option value='linux-5.13.y'>linux-5.13.y</option>
<option value='linux-5.14.y'>linux-5.14.y</option>
<option value='linux-5.15.y'>linux-5.15.y</option>
<option value='linux-5.16.y'>linux-5.16.y</option>
<option value='linux-5.17.y'>linux-5.17.y</option>
<option value='linux-5.18.y'>linux-5.18.y</option>
<option value='linux-5.19.y'>linux-5.19.y</option>
<option value='linux-5.2.y'>linux-5.2.y</option>
<option value='linux-5.3.y'>linux-5.3.y</option>
<option value='linux-5.4.y'>linux-5.4.y</option>
<option value='linux-5.5.y'>linux-5.5.y</option>
<option value='linux-5.6.y'>linux-5.6.y</option>
<option value='linux-5.7.y'>linux-5.7.y</option>
<option value='linux-5.8.y'>linux-5.8.y</option>
<option value='linux-5.9.y'>linux-5.9.y</option>
<option value='linux-6.0.y'>linux-6.0.y</option>
<option value='linux-6.1.y'>linux-6.1.y</option>
<option value='linux-6.10.y'>linux-6.10.y</option>
<option value='linux-6.11.y'>linux-6.11.y</option>
<option value='linux-6.12.y' selected='selected'>linux-6.12.y</option>
<option value='linux-6.13.y'>linux-6.13.y</option>
<option value='linux-6.14.y'>linux-6.14.y</option>
<option value='linux-6.15.y'>linux-6.15.y</option>
<option value='linux-6.16.y'>linux-6.16.y</option>
<option value='linux-6.17.y'>linux-6.17.y</option>
<option value='linux-6.18.y'>linux-6.18.y</option>
<option value='linux-6.19.y'>linux-6.19.y</option>
<option value='linux-6.2.y'>linux-6.2.y</option>
<option value='linux-6.3.y'>linux-6.3.y</option>
<option value='linux-6.4.y'>linux-6.4.y</option>
<option value='linux-6.5.y'>linux-6.5.y</option>
<option value='linux-6.6.y'>linux-6.6.y</option>
<option value='linux-6.7.y'>linux-6.7.y</option>
<option value='linux-6.8.y'>linux-6.8.y</option>
<option value='linux-6.9.y'>linux-6.9.y</option>
<option value='linux-rolling-lts'>linux-rolling-lts</option>
<option value='linux-rolling-stable'>linux-rolling-stable</option>
<option value='master'>master</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>Hosts the 0x221E linux distro kernel.</td><td class='sub right'>Ubuntu</td></tr></table>
<table class='tabs'><tr><td>
<a href='/distro/kernel/?h=linux-6.12.y'>summary</a><a href='/distro/kernel/refs/?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>refs</a><a class='active' href='/distro/kernel/log/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y'>log</a><a href='/distro/kernel/tree/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>tree</a><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>commit</a><a href='/distro/kernel/diff/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>diff</a></td><td class='form'><form class='right' method='get' action='/distro/kernel/log/arch/arm/mach-netx/nxdkn.c'>
<input type='hidden' name='h' value='linux-6.12.y'/><input type='hidden' name='id' value='a09df10585d3b3b7a2f640b11fabea262e751091'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/distro/kernel/log/?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>root</a>/<a href='/distro/kernel/log/arch?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>arch</a>/<a href='/distro/kernel/log/arch/arm?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>arm</a>/<a href='/distro/kernel/log/arch/arm/mach-netx?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>mach-netx</a>/<a href='/distro/kernel/log/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091'>nxdkn.c</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th class='left'>Age</th><th class='left'>Commit message (<a href='/distro/kernel/log/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a09df10585d3b3b7a2f640b11fabea262e751091&amp;showmsg=1'>Expand</a>)</th><th class='left'>Author</th></tr>
<tr><td><span title='2013-01-14 19:55:03 -0800'>2013-01-14</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=f8060f5446b1f2782f0a8ca9be2d870ea4198aee'>Merge tag 'gic-vic-to-irqchip' of git://sources.calxeda.com/kernel/linux into...</a></td><td>Olof Johansson</td></tr>
<tr><td><span title='2013-01-12 10:51:59 -0600'>2013-01-12</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=2cb003c57e3e01d92303f4070ac9f25c9a4ed786'>ARM: remove unneeded vic.h includes</a></td><td>Rob Herring</td></tr>
<tr><td><span title='2013-01-12 10:48:04 -0600'>2013-01-12</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=a0368029133f005251e218d98d4ca053afaafe6f'>ARM: remove mach .handle_irq for VIC users</a></td><td>Rob Herring</td></tr>
<tr><td><span title='2012-12-24 09:36:38 -0700'>2012-12-24</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=6bb27d7349db51b50c40534710fe164ca0d58902'>ARM: delete struct sys_timer</a></td><td>Stephen Warren</td></tr>
<tr><td><span title='2012-09-14 11:17:36 +0200'>2012-09-14</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=2960ed3468773b1a0b2533dd7a562673cc799437'>ARM: netx: move platform_data definitions</a></td><td>Arnd Bergmann</td></tr>
<tr><td><span title='2012-01-05 13:25:27 +0000'>2012-01-05</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=7b9dd47136c07ffd883aff6926c7b281e4c1eea4'>Merge branch 'restart' into for-linus</a></td><td>Russell King</td></tr>
<tr><td><span title='2012-01-05 12:57:16 +0000'>2012-01-05</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=8fb06b124288bf11d9fc2406864ef419c0ebce85'>ARM: restart: netx: use new restart hook</a></td><td>Russell King</td></tr>
<tr><td><span title='2011-11-15 18:14:03 +0000'>2011-11-15</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=14f127badadb3960f73c63dac91092a7425aa38e'>ARM: netx: convert to MULTI_IRQ_HANDLER</a></td><td>Jamie Iles</td></tr>
<tr><td><span title='2011-08-21 17:15:01 -0400'>2011-08-21</span></td><td><a href='/distro/kernel/commit/arch/arm/mach-netx/nxdkn.c?h=linux-6.12.y&amp;id=b11fd42cad65c65609bd90936307e204d1f2a11a'>ARM: mach-netx: convert boot_params to atag_offset</a></td><td>Nicolas Pitre</td></tr>
