]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/basic/env-file.h
Merge pull request #28301 from berrange/cvm-lockdown
[thirdparty/systemd.git] / src / basic / env-file.h
CommitLineData
db9ecf05 1/* SPDX-License-Identifier: LGPL-2.1-or-later */
686d13b9
LP
2#pragma once
3
361bcb20 4#include <fcntl.h>
686d13b9
LP
5#include <stdarg.h>
6#include <stdio.h>
7
8#include "macro.h"
9
10int parse_env_filev(FILE *f, const char *fname, va_list ap);
06692fdb 11int parse_env_file_fdv(int fd, const char *fname, va_list ap);
686d13b9
LP
12int parse_env_file_sentinel(FILE *f, const char *fname, ...) _sentinel_;
13#define parse_env_file(f, fname, ...) parse_env_file_sentinel(f, fname, __VA_ARGS__, NULL)
649512b9
YW
14int parse_env_file_fd_sentinel(int fd, const char *fname, ...) _sentinel_;
15#define parse_env_file_fd(fd, fname, ...) parse_env_file_fd_sentinel(fd, fname, __VA_ARGS__, NULL)
dd57a22e
YW
16int load_env_file(FILE *f, const char *fname, char ***ret);
17int load_env_file_pairs(FILE *f, const char *fname, char ***ret);
6255bbe2 18int load_env_file_pairs_fd(int fd, const char *fname, char ***ret);
686d13b9
LP
19
20int merge_env_file(char ***env, FILE *f, const char *fname);
21
361bcb20
DDM
22int write_env_file_at(int dir_fd, const char *fname, char **l);
23static inline int write_env_file(const char *fname, char **l) {
24 return write_env_file_at(AT_FDCWD, fname, l);
25}