#include "log.h"
#include "system-recovery.h"
-#include <asm-generic/setup.h> // for COMMAND_LINE_SIZE
-
-#define KERNEL_CMDLINE_KEY "tizen.recovery"
-
static char *get_action_from_config(config_t *cfg)
{
config_setting_t *node;
return strdup(action);
}
-// looks for tizen.recovery= key in kernel command line
-static char *get_action_from_cmdline(void)
-{
- FILE *fp;
- char cmdline[COMMAND_LINE_SIZE];
- int len;
-
- fp = fopen("/proc/cmdline", "r");
- if (!fp)
- return NULL;
-
- char *p = fgets(cmdline, sizeof cmdline, fp);
- fclose(fp);
- if (!p)
- return NULL;
-
- const char *prefix = KERNEL_CMDLINE_KEY "=";
- p = strstr(cmdline, prefix);
- if (!p)
- return NULL;
- p += strlen(prefix);
-
- for (len = 0; *(p + len) != 0 && !isspace(*(p + len)); ++len)
- ; /* skip */
-
- return strndup(p, len);
-}
-
int recovery_headless(config_t *cfg)
{
config_setting_t *node;