Lines Matching full:environment
57 ulong env_size; /* environment size */
59 ulong env_sectors; /* number of environment sectors */
102 struct environment { struct
110 static struct environment environment = { argument
169 * Search the environment for a variable.
176 for (env = environment.data; *env; env = nxt + 1) { in fw_getenv()
180 if (nxt >= &environment.data[ENV_SIZE]) { in fw_getenv()
182 "environment not terminated\n"); in fw_getenv()
195 * Search the default environment for a variable.
208 "default environment not terminated\n"); in fw_getdefenv()
250 * environment variables
270 for (env = environment.data; *env; env = nxt + 1) { in fw_printenv()
272 if (nxt >= &environment.data[ENV_SIZE]) { in fw_printenv()
274 "environment not terminated\n"); in fw_printenv()
317 ret = env_aes_cbc_crypt(environment.data, 1, in fw_env_flush()
329 *environment.crc = crc32(0, (uint8_t *) environment.data, ENV_SIZE); in fw_env_flush()
331 /* write environment back to flash */ in fw_env_flush()
343 * Set/Clear a single variable in the environment.
344 * This is called in sequence to update the environment
357 for (nxt = env = environment.data; *env; env = nxt + 1) { in fw_env_write()
359 if (nxt >= &environment.data[ENV_SIZE]) { in fw_env_write()
361 "environment not terminated\n"); in fw_env_write()
433 for (env = environment.data; *env || *(env + 1); ++env); in fw_env_write()
434 if (env > environment.data) in fw_env_write()
438 * "name" + "=" + "val" +"\0\0" > CUR_ENVSIZE - (env-environment) in fw_env_write()
444 if (len > (&environment.data[ENV_SIZE] - env)) { in fw_env_write()
446 "Error: environment overflow, \"%s\" deleted\n", in fw_env_write()
464 * Deletes or sets environment variables. Returns -1 and sets errno error codes:
491 fprintf(stderr, "Error: environment not initialized\n"); in fw_env_set()
567 fprintf(stderr, "Error: environment not initialized\n"); in fw_parse_script()
638 * try to save the environment and returns an error in fw_parse_script()
669 /* environment is block aligned */ in environment_end()
783 * Write count bytes from begin of environment, but stay within
809 * For mtd devices only offset and size of the environment do matter in flash_write_buf()
841 * area to be erased, replace the environment image, write the whole in flash_write_buf()
870 /* Overwrite the old environment */ in flash_write_buf()
979 /* Encrypt or decrypt the environment before writing or reading it. */
1005 switch (environment.flag_scheme) { in flash_write()
1009 (*environment.flags)++; in flash_write()
1012 *environment.flags = active_flag; in flash_write()
1016 environment.flag_scheme); in flash_write()
1021 fprintf(stderr, "Writing new environment at 0x%llx on %s\n", in flash_write()
1025 rc = flash_write_buf(dev_target, fd_target, environment.image, in flash_write()
1030 if (environment.flag_scheme == FLAG_BOOLEAN) { in flash_write()
1036 "Setting obsolete flag in environment at 0x%llx on %s\n", in flash_write()
1049 rc = flash_read_buf(dev_current, fd, environment.image, CUR_ENVSIZE, in flash_read()
1156 "Not enough memory for environment (%ld bytes)\n", in fw_env_open()
1162 /* read environment from FLASH to local buffer */ in fw_env_open()
1163 environment.image = addr0; in fw_env_open()
1167 environment.crc = &redundant->crc; in fw_env_open()
1168 environment.flags = &redundant->flags; in fw_env_open()
1169 environment.data = redundant->data; in fw_env_open()
1172 environment.crc = &single->crc; in fw_env_open()
1173 environment.flags = NULL; in fw_env_open()
1174 environment.data = single->data; in fw_env_open()
1183 crc0 = crc32 (0, (uint8_t *) environment.data, ENV_SIZE); in fw_env_open()
1186 ret = env_aes_cbc_crypt(environment.data, 0, in fw_env_open()
1192 crc0_ok = (crc0 == *environment.crc); in fw_env_open()
1196 "Warning: Bad CRC, using default environment\n"); in fw_env_open()
1197 memcpy(environment.data, default_environment, sizeof default_environment); in fw_env_open()
1200 flag0 = *environment.flags; in fw_env_open()
1206 "Not enough memory for environment (%ld bytes)\n", in fw_env_open()
1214 * have to set environment.image for flash_read(), careful - in fw_env_open()
1215 * other pointers in environment still point inside addr0 in fw_env_open()
1217 environment.image = addr1; in fw_env_open()
1226 environment.flag_scheme = FLAG_BOOLEAN; in fw_env_open()
1229 environment.flag_scheme = FLAG_INCREMENTAL; in fw_env_open()
1232 environment.flag_scheme = FLAG_BOOLEAN; in fw_env_open()
1235 environment.flag_scheme = FLAG_INCREMENTAL; in fw_env_open()
1238 environment.flag_scheme = FLAG_INCREMENTAL; in fw_env_open()
1263 "Warning: Bad CRC, using default environment\n"); in fw_env_open()
1264 memcpy (environment.data, default_environment, in fw_env_open()
1268 switch (environment.flag_scheme) { in fw_env_open()
1297 environment.flag_scheme); in fw_env_open()
1308 environment.image = addr1; in fw_env_open()
1309 environment.crc = &redundant->crc; in fw_env_open()
1310 environment.flags = &redundant->flags; in fw_env_open()
1311 environment.data = redundant->data; in fw_env_open()
1314 environment.image = addr0; in fw_env_open()
1335 * Simply free allocated buffer with environment
1339 if (environment.image) in fw_env_close()
1340 free(environment.image); in fw_env_close()
1342 environment.image = NULL; in fw_env_close()
1415 /* Assume enough sectors to cover the environment */ in check_device_config()
1419 fprintf(stderr, "Environment does not start on (erase) block boundary\n"); in check_device_config()
1425 fprintf(stderr, "Environment does not fit into available sectors\n"); in check_device_config()