Skip to content

Commit 1a09dd2

Browse files
committed
advanced task fix
1 parent 4064ad1 commit 1a09dd2

2 files changed

Lines changed: 18 additions & 7 deletions

File tree

0x15-file_io/100-elf_header.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,20 @@ void display_error(const char *message)
2121
*/
2222
void display_elf_header(const Elf64_Ehdr *header)
2323
{
24+
int i;
25+
2426
printf("Magic: ");
25-
for (int i = 0; i < EI_NIDENT; i++)
27+
28+
for (i = 0; i < EI_NIDENT; i++)
2629
printf("%02x ", header->e_ident[i]);
2730
printf("\n");
2831

29-
printf("Class: %s\n", (header->e_ident[EI_CLASS] == ELFCLASS32) ? "ELF32" : "ELF64");
30-
printf("Data: %s\n", (header->e_ident[EI_DATA] == ELFDATA2LSB) ? "2's complement, little endian" : "2's complement, big endian");
32+
printf("Class: %s\n",
33+
(header->e_ident[EI_CLASS] == ELFCLASS32) ? "ELF32" : "ELF64");
34+
printf("Data: %s\n",
35+
(header->e_ident[EI_DATA] == ELFDATA2LSB)
36+
? "2's complement, little endian"
37+
: "2's complement, big endian");
3138
printf("Version: %d\n", header->e_ident[EI_VERSION]);
3239
printf("OS/ABI: %d\n", header->e_ident[EI_OSABI]);
3340
printf("ABI Version: %d\n", header->e_ident[EI_ABIVERSION]);
@@ -44,16 +51,20 @@ void display_elf_header(const Elf64_Ehdr *header)
4451
*/
4552
int main(int argc, char *argv[])
4653
{
54+
const char *filename;
55+
int fd;
56+
Elf64_Ehdr header;
57+
ssize_t bytes_read;
58+
4759
if (argc != 2)
4860
display_error("Usage: elf_header elf_filename");
4961

50-
const char *filename = argv[1];
51-
int fd = open(filename, O_RDONLY);
62+
filename = argv[1];
63+
fd = open(filename, O_RDONLY);
5264
if (fd == -1)
5365
display_error("Error: Failed to open the file");
5466

55-
Elf64_Ehdr header;
56-
ssize_t bytes_read = read(fd, &header, sizeof(header));
67+
bytes_read = read(fd, &header, sizeof(header));
5768
if (bytes_read == -1 || bytes_read != sizeof(header))
5869
{
5970
close(fd);

0x15-file_io/elf_header

16.8 KB
Binary file not shown.

0 commit comments

Comments
 (0)