IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

[Format ELF] Flags


Sujet :

Linux

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2009
    Messages : 20
    Points : 18
    Points
    18
    Par défaut [Format ELF] Flags
    Bonjour,

    la commande 'objdump -f' affiche des informations sur le header ELF d' un fichier objet ou executable.
    Par exemple sur un fichier a.out :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    int main()
    {
        return 0;
    }
    objdump -f affiche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    a.out:     file format elf32-i386
    architecture: i386, flags 0x00000112:
    EXEC_P, HAS_SYMS, D_PAGED
    start address 0x080482e0
    Je voudrais savoir a quoi corresponde les flags (EXEC_P, ...)

    Je pensais qu'il suffisait de recuperer la variable e_flags de la structure Ehdr mais cette variable est toujours egale a 0 (voir man elf).

    Merci !

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 61
    Points : 37
    Points
    37
    Par défaut
    Je deterre ce topic car je suis certain que certains apres moi auront besoin de ces quelques informations.

    Il faut d'abord savoir que les flags dont tu parle ne sont pas definis par le header elf.h mais par la libbfd. Ces flags sont donc propres a cette lib, et comme indique dans le fichier bfd.h, sont parfois faux :
    /* Values that may appear in the flags field of a BFD. These also
    appear in the object_flags field of the bfd_target structure, where
    they indicate the set of flags used by that backend (not all flags
    are meaningful for all object file formats) (FIXME: at the moment,
    the object_flags values have mostly just been copied from backend
    to another, and are not necessarily correct). */
    Plus simplement, le symbole EXEC_P indique que le fichier est un fichier ELF Executable (voir e_type et ElfN_Ehdr).
    DYNAMIC indique un fichier de type ET_DYN (e_type encore..)
    HAS_SYMS indique la presence d'une section de type SHT_SYMTAB (voir sh_type et ElfN_Shdr)
    HAS_RELOC indique la presence d'une section de type SHT_REL (ou SHT_RELA ?)
    Et enfin, mais je ne suis pas sur, D_PAGED indiquerait la presence SHT_HASH.

    Bref, comme tu vois, en se basant uniquement sur les declarations de elf.h, on peut en tirer quelques conclusions.

    Pour finir, n'oublie pas que les symboles affiches par objdump -f sont parfois faux. Exemple : utilise la commande strip sur un fichier executable, et tu verras que objdump affiche HAS_SYMS, ce que n'est pas possible puisque cette commande supprime ce type de sections.

    Cordialement,

    William

Discussions similaires

  1. [Format ELF] Flags
    Par ouhare dans le forum Linux
    Réponses: 0
    Dernier message: 13/03/2011, 16h26
  2. Comment changer le fichier log en Format ELF
    Par dragon_menel dans le forum Apache
    Réponses: 2
    Dernier message: 30/01/2008, 20h46
  3. Exécution de processus (format elf, a.out)
    Par b4u dans le forum Administration système
    Réponses: 2
    Dernier message: 19/03/2006, 17h59
  4. Format elf au lieu de flat ???
    Par olivier857 dans le forum Autres éditeurs
    Réponses: 12
    Dernier message: 21/02/2006, 08h50
  5. Le format elf
    Par Bibouda dans le forum Linux
    Réponses: 2
    Dernier message: 07/12/2005, 09h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo