iPXE
|
Private key. More...
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <ipxe/dhcp.h>
#include <ipxe/settings.h>
#include <ipxe/x509.h>
#include <ipxe/privkey.h>
Go to the source code of this file.
Macros | |
#define | ALLOW_KEY_OVERRIDE 1 |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
__asm__ (".section \".rodata\", \"a\", " PROGBITS "\n\t" "\nprivate_key_data:\n\t" ".size private_key_data, ( . - private_key_data )\n\t" ".equ private_key_len, ( . - private_key_data )\n\t" ".previous\n\t") | |
static struct setting privkey_setting | __setting (SETTING_CRYPTO, privkey) |
Private key setting. More... | |
void | privkey_free (struct refcnt *refcnt) |
Free private key. More... | |
static int | privkey_apply_settings (void) |
Apply private key configuration settings. More... | |
Variables | |
char | private_key_data [] |
char | private_key_len [] |
struct private_key | private_key |
Private key. More... | |
static struct asn1_cursor | default_private_key |
Default private key. More... | |
struct settings_applicator privkey_applicator | __settings_applicator |
Private key settings applicator. More... | |
Private key.
Life would in theory be easier if we could use a single file to hold both the certificate and corresponding private key. Unfortunately, the only common format which supports this is PKCS#12 (aka PFX), which is too ugly to be allowed anywhere near my codebase. See, for reference and amusement:
http://www.cs.auckland.ac.nz/~pgut001/pubs/pfx.html
Definition in file privkey.c.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
__asm__ | ( | ".section \".rodata\" | , |
\"a\" | , | ||
" PROGBITS "\n\t" "\nprivate_key_data:\n\t" ".size | private_key_data, | ||
(. - private_key_data)\n\t" ".equ | private_key_len, | ||
(. - private_key_data)\n\t" ".previous\n\t" | |||
) |
Referenced by __attribute__(), _dump_regs(), apm_poweroff(), bios_cpu_nap(), bios_currticks(), bios_getchar(), bios_handle_cup(), bios_handle_dectcem_reset(), bios_handle_dectcem_set(), bios_handle_ed(), bios_inject(), bios_inject_startup(), bios_iskey(), bios_mp_exec_boot(), bios_putchar(), bios_reboot(), bochsbp(), bzimage_exec(), call_bootsector(), com32_cfarcall(), com32_exec_loop(), com32_farcall(), com32_intcall(), comboot_exec_loop(), comboot_force_text_mode(), copy_from_real_libkir(), copy_to_real_libkir(), cpuid_instruction_supported(), elfboot_exec(), extmemsize_88(), extmemsize_e801(), fake_e820(), gdbmach_breakpoint(), gdbmach_handler(), gdbmach_update(), hook_comboot_interrupts(), i386_readq(), i386_writeq(), int13_hook_vector(), int13_load_eltorito(), int13_load_mbr(), int13con_init(), int13con_rw(), int22(), interrupt(), IOAPI_INLINE(), iounmap_pages(), librm_test_exec(), meme820(), multiboot_exec(), nbi_boot16(), nbi_boot32(), pcibios_discover(), pcibios_read(), pcibios_write(), pxe_activate(), pxe_start_nbp(), rdrand_get_noise(), rdtsc_raw(), rdtsc_scaled(), rtc_entropy_check(), rtc_get_noise(), rtc_hook_isr(), sdi_exec(), stack_check(), tcpip_continue_chksum(), undi_load(), undinet_call(), undinet_poll(), vesafb_font(), vesafb_init(), vesafb_mode_info(), vesafb_mode_list(), vesafb_restore(), and vesafb_set_mode().
|
static |
Private key setting.
void privkey_free | ( | struct refcnt * | refcnt | ) |
Free private key.
refcnt | Reference counter |
Definition at line 94 of file privkey.c.
References container_of, free, and key.
Referenced by privkey_init().
|
static |
Apply private key configuration settings.
rc | Return status code |
Definition at line 107 of file privkey.c.
References ALLOW_KEY_OVERRIDE, private_key::builder, asn1_builder::data, DBGC, DBGC_HDA, default_private_key, fetch_raw_setting_copy(), free, len, asn1_builder::len, memcpy(), and NULL.
char private_key_data[] |
char private_key_len[] |
struct private_key private_key |
Private key.
|
static |
Default private key.
Definition at line 76 of file privkey.c.
Referenced by privkey_apply_settings().
struct settings_applicator privkey_applicator __settings_applicator |
Private key settings applicator.