table of contents
uselib(2) | System Calls Manual | uselib(2) |
NOME¶
uselib - seleziona una libreria condivisa
SINTASSI¶
#include <unistd.h>
[[deprecated]] int uselib(const char *library);
DESCRIZIONE¶
La chiamata di sistema uselib() serve per caricare una libreria condivisa che sarà usata dal processo chiamante. Viene dato un nome di percorso. L'indirizzo da cui caricare si trova nella stessa libreria. La libreria può avere qualunque formato binario riconosciuto.
VALORE RESTITUITO¶
In caso di successo restituisce zero. In caso di errore restituisce -1, e errno verrà impostato per indicare l'errore
ERRORI¶
In aggiunta a tutti i codici di errore restituiti da open(2) e mmap(2), possono essere restituiti anche i seguenti:
- EACCES
- La libreria specificata da library non ha permessi in lettura o esecuzione, o il chiamante non ha permessi di ricerca per una delle directory nel percorso (vedere anche path_resolution(7)).
- ENFILE
- E' stato raggiunto il limite per l'intero sistema sul numero totale di file aperti.
- ENOEXEC
- Il file specificato da library non è un eseguibile o un tipo conosciuto, es., non ha i magic number corretti.
CONFORME A¶
Linux.
STORIA¶
This obsolete system call is not supported by glibc. No declaration is provided in glibc headers, but, through a quirk of history, glibc before glibc 2.23 did export an ABI for this system call. Therefore, in order to employ this system call, it was sufficient to manually declare the interface in your code; alternatively, you could invoke the system call using syscall(2).
Nelle vecchie versioni (prima di glibc 2.0), uselib() fu usata per caricare le librerie condivise con nomi trovati in un array di nomi nel binario.
A partire da Linux 3.15, questa chiamata di sistema è disponibile solo quando il kernel è configurato con l'opzione CONFIG_USELIB.
VEDERE ANCHE¶
ar(1), gcc(1), ld(1), ldd(1), mmap(2), open(2), dlopen(3), capabilities(7), ld.so(8)
TRADUZIONE¶
La traduzione italiana di questa pagina di manuale è stata creata da Goffredo Baroncelli <kreijack@usa.net>, Giulio Daprelà <giulio@pluto.it> e Marco Curreli <marcocurreli@tiscali.it>
Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o successiva per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.
Per segnalare errori nella traduzione di questa pagina di manuale inviare un messaggio a pluto-ildp@lists.pluto.it.
2 maggio 2024 | Linux man-pages (unreleased) |