1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * (C) Copyright 2022 4 * Max Krummenacher, Toradex 5 * 6 * Snippets taken from tools/env/fw_env.c 7 * 8 * This prints the list of default environment variables as currently 9 * configured. 10 * 11 */ 12 13#include <stdio.h> 14 15/* Pull in the current config to define the default environment */ 16#include <linux/kconfig.h> 17 18#ifndef __ASSEMBLY__ 19#define __ASSEMBLY__ /* get only #defines from config.h */ 20#include <config.h> 21#undef __ASSEMBLY__ 22#else 23#include <config.h> 24#endif 25 26#define DEFAULT_ENV_INSTANCE_STATIC 27#include <generated/environment.h> 28#include <env_default.h> 29 30int main(void) 31{ 32 char *env, *nxt; 33 34 for (env = default_environment; *env; env = nxt + 1) { 35 for (nxt = env; *nxt; ++nxt) { 36 if (nxt >= &default_environment[sizeof(default_environment)]) { 37 fprintf(stderr, "## Error: environment not terminated\n"); 38 return -1; 39 } 40 } 41 printf("%s\n", env); 42 } 43 return 0; 44} 45