+ const char *Args[400];
+ unsigned int i = 0;
+
+ Args[i++] = gpgvpath.c_str();
+ Args[i++] = "--status-fd";
+ Args[i++] = "3";
+ Args[i++] = "--keyring";
+ Args[i++] = pubringpath.c_str();
+
+ Configuration::Item const *Opts;
+ Opts = _config->Tree("Acquire::gpgv::Options");
+ if (Opts != 0)
+ {
+ Opts = Opts->Child;
+ for (; Opts != 0; Opts = Opts->Next)
+ {
+ if (Opts->Value.empty() == true)
+ continue;
+ Args[i++] = Opts->Value.c_str();
+ if(i >= 395) {
+ std::cerr << _("E: Argument list from Acquire::gpgv::Options too long. Exiting.") << std::endl;
+ exit(111);
+ }
+ }
+ }
+ Args[i++] = file;
+ Args[i++] = outfile;
+ Args[i++] = NULL;
+