Lines Matching defs:argstate

150  *	argstate - Address of ARGSTATE block to be initialized
153 * On success, *argstate is initialized. On error,
158 PHDR_CMD_T cmd, ARGSTATE *argstate)
163 bzero(argstate, sizeof (*argstate));
164 argstate->obj_state = obj_state;
170 argstate->optmask |= getopt_ret->gor_idmask;
177 argstate->print_req = 1;
181 argstate->print_req = (argc < 2);
186 argstate->print_req = (argc == 0);
191 argstate->print_req = 0;
196 argstate->print_req = 0;
203 argstate->print_req = (argc < 2);
208 argstate->argc = argc;
209 argstate->argv = argv;
211 argstate->ndx_set = 0;
219 if (argstate->optmask & PHDR_OPT_F_PHNDX) {
220 argstate->ndx = (Word) elfedit_atoui_range(
221 argstate->argv[0], MSG_ORIG(MSG_STR_ELEMENT), 0,
222 argstate->obj_state->os_phnum - 1, NULL);
223 argstate->ndx_set = 1;
232 argstate->ndx = (Word) elfedit_atoconst(
233 argstate->argv[0], ELFEDIT_CONST_PT);
236 if (phdr->p_type == argstate->ndx) {
237 argstate->ndx = i;
238 argstate->ndx_set = 1;
246 if (i == argstate->obj_state->os_phnum)
249 osabi, mach, argstate->ndx, 0, &inv_buf));
343 * argstate - State block for section header array. The following
348 print_phdr(PHDR_CMD_T cmd, int autoprint, ARGSTATE *argstate)
351 Ehdr *ehdr = argstate->obj_state->os_ehdr;
372 if (argstate->ndx_set) {
373 ndx = argstate->ndx;
374 if (argstate->print_req &&
375 ((argstate->optmask & PHDR_OPT_F_PHNDX) == 0)) {
377 type = argstate->obj_state->os_phdr[ndx].p_type;
378 cnt = argstate->obj_state->os_phnum - ndx;
384 cnt = argstate->obj_state->os_phnum;
386 phdr = argstate->obj_state->os_phdr + ndx;
419 (void) locate_interp(argstate->obj_state, &interp);
448 argstate->obj_state->os_ehdr->e_machine,
508 cmd_body_set_interp(ARGSTATE *argstate)
510 elfedit_obj_state_t *obj_state = argstate->obj_state;
533 if (strcmp(interp.str, argstate->argv[0]) == 0) {
565 str_size = strlen(argstate->argv[0]) + 1;
590 argstate->argv[0]);
593 argstate->argv[0],
604 argstate->argv[0]);
627 dynsec, argstate->argv[0]);
665 ARGSTATE argstate;
670 process_args(obj_state, argc, argv, cmd, &argstate);
673 if (argstate.print_req) {
674 print_phdr(cmd, 0, &argstate);
679 if (argstate.ndx_set)
680 phdr = &argstate.obj_state->os_phdr[argstate.ndx];
693 Word p_type = elfedit_atoconst(argstate.argv[1],
700 argstate.ndx, MSG_ORIG(MSG_CMD_P_TYPE),
706 argstate.ndx, MSG_ORIG(MSG_CMD_P_TYPE),
721 p_offset = elfedit_atoui(argstate.argv[1], NULL);
725 argstate.ndx, MSG_ORIG(MSG_CMD_P_OFFSET),
730 argstate.ndx, MSG_ORIG(MSG_CMD_P_OFFSET),
741 Addr p_vaddr = elfedit_atoui(argstate.argv[1], NULL);
746 argstate.ndx, MSG_ORIG(MSG_CMD_P_VADDR),
751 argstate.ndx, MSG_ORIG(MSG_CMD_P_VADDR),
761 Addr p_paddr = elfedit_atoui(argstate.argv[1], NULL);
766 argstate.ndx, MSG_ORIG(MSG_CMD_P_PADDR),
771 argstate.ndx, MSG_ORIG(MSG_CMD_P_PADDR),
781 Xword p_filesz = elfedit_atoui(argstate.argv[1], NULL);
786 argstate.ndx, MSG_ORIG(MSG_CMD_P_FILESZ),
791 argstate.ndx, MSG_ORIG(MSG_CMD_P_FILESZ),
802 Xword p_memsz = elfedit_atoui(argstate.argv[1], NULL);
807 argstate.ndx, MSG_ORIG(MSG_CMD_P_MEMSZ),
812 argstate.ndx, MSG_ORIG(MSG_CMD_P_MEMSZ),
830 for (i = 1; i < argstate.argc; i++)
832 (Word) elfedit_atoconst(argstate.argv[i],
836 if (argstate.optmask & PHDR_OPT_F_CMP)
840 if (argstate.optmask & PHDR_OPT_F_AND)
842 else if (argstate.optmask & PHDR_OPT_F_OR)
849 argstate.ndx, MSG_ORIG(MSG_CMD_P_FLAGS),
855 argstate.ndx, MSG_ORIG(MSG_CMD_P_FLAGS),
867 Xword p_align = elfedit_atoui(argstate.argv[1], NULL);
872 argstate.ndx, MSG_ORIG(MSG_CMD_P_ALIGN),
877 argstate.ndx, MSG_ORIG(MSG_CMD_P_ALIGN),
887 ret = cmd_body_set_interp(&argstate);
892 Word cnt = (argstate.argc == 1) ? 1 :
893 (Word) elfedit_atoui_range(argstate.argv[1],
895 obj_state->os_phnum - argstate.ndx, NULL);
899 obj_state->os_phnum, argstate.ndx, cnt);
913 elfedit_atoui_range(argstate.argv[1],
916 if (argstate.argc == 2) {
920 argstate.argv[2], MSG_ORIG(MSG_STR_COUNT),
925 obj_state->os_phnum, argstate.ndx, dstndx,
940 print_phdr(cmd, 1, &argstate);