PatchworkOS
19e446b
A non-POSIX operating system.
Theme:
Default
Round
Robot
Loading...
Searching...
No Matches
main.c
Go to the documentation of this file.
1
#define __STDC_WANT_LIB_EXT1__ 1
2
#include <
errno.h
>
3
#include <
stdbool.h
>
4
#include <
stdint.h
>
5
#include <
stdio.h
>
6
#include <
stdlib.h
>
7
#include <
string.h
>
8
#include <
sys/fs.h
>
9
10
int
main
(
int
argc,
char
** argv)
11
{
12
if
(argc < 2)
13
{
14
fprintf
(
stderr
,
"%s <path>\n"
, argv[0]);
15
return
EXIT_FAILURE
;
16
}
17
18
char
buffer
[
MAX_PATH
];
19
uint64_t
len =
readlink
(argv[1],
buffer
,
sizeof
(
buffer
) - 1);
20
if
(len ==
ERR
)
21
{
22
fprintf
(
stderr
,
"readlink: failed to readlink %s (%s)\n"
, argv[1],
strerror
(
errno
));
23
return
EXIT_FAILURE
;
24
}
25
buffer
[len] =
'\0'
;
26
printf
(
"%s\n"
,
buffer
);
27
28
return
EXIT_SUCCESS
;
29
}
MAX_PATH
#define MAX_PATH
Maximum length of filepaths.
Definition
MAX_PATH.h:11
buffer
EFI_PHYSICAL_ADDRESS buffer
Definition
main.c:237
main
int main(void)
Definition
main.c:5
errno.h
errno
#define errno
Error number variable.
Definition
errno.h:27
readlink
size_t readlink(const char *path, char *buffer, uint64_t count)
System call for reading the target of a symbolic link.
Definition
readlink.c:8
ERR
#define ERR
Integer error value.
Definition
ERR.h:17
fs.h
stdbool.h
stdint.h
uint64_t
__UINT64_TYPE__ uint64_t
Definition
stdint.h:17
stdio.h
printf
_PUBLIC int printf(const char *_RESTRICT format,...)
Definition
printf.c:3
stderr
FILE * stderr
Definition
std_streams.c:19
fprintf
_PUBLIC int fprintf(FILE *_RESTRICT stream, const char *_RESTRICT format,...)
Definition
fprintf.c:3
stdlib.h
EXIT_SUCCESS
#define EXIT_SUCCESS
Definition
stdlib.h:46
EXIT_FAILURE
#define EXIT_FAILURE
Definition
stdlib.h:47
string.h
strerror
_PUBLIC char * strerror(int errnum)
Definition
strerror.c:6
src
programs
utils
readlink
main.c
Generated on Sat Jan 24 2026 10:59:24 for PatchworkOS by
1.9.8