xref: /illumos-gate/usr/src/man/man3ext/ld_support.3ext (revision e0731422366620894c16c1ee6515551c5f00733d)
te
Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
LD_SUPPORT 3EXT "Nov 3, 2006"
NAME
ld_support, ld_atexit, ld_atexit64, ld_file, ld_file64, ld_input_done, ld_input_section, ld_input_section64, ld_open, ld_open64, ld_section, ld_section64, ld_start, ld_start64, ld_version - link-editor support functions
SYNOPSIS

void ld_atexit(int status);

void ld_atexit64(int status);

void ld_file(const char *name, const Elf_Kind kind, int flags,
 Elf *elf);

void ld_file64(const char *name, const Elf_Kind kind, int flags,
 Elf *elf);

void ld_input_done(uint_t *flags);

void ld_input_section(const char *name, Elf32_Shdr **shdr,
 Elf32_Word sndx, Elf_Data *data, Elf *elf, uint_t *flags);

void ld_input_section64(const char *name, Elf64_Shdr **shdr,
 Elf64_Word sndx, Elf_Data *data, Elf *elf, uint_t *flags);

void ld_open(const char **pname, const char **fname, int *fd,
 int flags, Elf **elf, Elf *ref, size_t off, Elf_kind kind);

void ld_open64(const char **pname, const char **fname, int *fd,
 int flags, Elf **elf, Elf *ref, size_t off, Elf_kind kind);

void ld_section(const char *name, Elf32_Shdr shdr, Elf32_Word sndx,
 Elf_Data *data, Elf *elf);

void ld_section64(const char *name, Elf64_Shdr shdr, Elf64_Word sndx,
 Elf_Data *data, Elf *elf);

void ld_start(const char *name, const Elf32_Half type,
 const char *caller);

void ld_start64(const char *name, const Elf64_Half type,
 const char *caller);

void ld_version(uint_t version);
DESCRIPTION

A link-editor support library is a user-created shared object offering one or more of these interfaces. These interfaces are called by the link-editor ld(1) at various stages of the link-editing process. See the Linker and Libraries Guide for a full description of the link-editor support mechanism.

SEE ALSO

ld(1)

Linker and Libraries Guide