Lines Matching refs:params
21 static int FillBuffer(CgptFindParams *params, int fd, uint64_t pos,
23 uint8_t *bufptr = params->comparebuf;
42 static int match_content(CgptFindParams *params, struct drive *drive,
46 if (!params->matchlen)
51 if (params->matchoffset + params->matchlen > part_size) {
56 if (!FillBuffer(params,
58 (LBA_SIZE * entry->starting_lba) + params->matchoffset,
59 params->matchlen)) {
65 if (0 == memcmp(params->matchbuf, params->comparebuf, params->matchlen)) {
74 static void showmatch(CgptFindParams *params, char *filename,
80 if (params->numeric) {
83 if (params->show_fn) {
84 params->show_fn(params, filename, partnum, entry);
89 if (params->verbose > 0)
90 EntryDetails(entry, partnum - 1, params->numeric);
95 static void chromeos_mtd_show(CgptFindParams *params, char *filename,
110 static int gpt_search(CgptFindParams *params, struct drive *drive,
128 if ((params->set_unique && GuidEqual(¶ms->unique_guid, &entry->unique))
129 || (params->set_type && GuidEqual(¶ms->type_guid, &entry->type))) {
131 } else if (params->set_label) {
138 if (!strncmp(params->label, partlabel, sizeof(partlabel)))
141 if (found && match_content(params, drive, entry)) {
142 params->hits++;
144 showmatch(params, filename, i+1, entry);
145 if (!params->match_partnum)
146 params->match_partnum = i+1;
153 static int do_search(CgptFindParams *params, char *fileName) {
157 if (CGPT_OK != DriveOpen(fileName, &drive, O_RDONLY, params->drive_size))
160 retval = gpt_search(params, &drive, fileName);
212 static int scan_real_devs(CgptFindParams *params) {
234 if (do_search(params, pathname)) {
258 if (params->drive_size == 0) {
259 if (GetMtdSize("/dev/mtd0", ¶ms->drive_size) != 0) {
270 params->show_fn = chromeos_mtd_show;
271 if (do_search(params, nor_file)) {
274 params->show_fn = NULL;
287 void CgptFind(CgptFindParams *params) {
288 if (params == NULL)
291 if (params->drive_name != NULL)
292 do_search(params, params->drive_name);
294 scan_real_devs(params);