int IniSection::Write (const YCPPath&p, const YCPValue&v, bool rewrite)
{
    if (ip->isFlat ())
	return setValueFlat (p, v);

    if (p->length() >= 1 && p->component_str (0) == "all")
    {
	return setAll (p, v, 1);
    }

    if (p->length() < 2)
    {
	y2error ("I do not know what to write to %s.", p->toString().c_str());
	return -1;
    }
    string s = p->component_str (0);
    if (s == "v" || s == "value")
	return setValue (p, v, 0, 1);
    if (s == "vc" || s == "value_comment" || s == "valuecomment")
      return setValue (p, v, 1, 1);
    if (s == "vt" || s == "value_type" || s == "valuetype")
      return setValue (p, v, 2, 1);
    if (s == "s" || s == "section" || s == "sc" || s == "section_comment" || s == "sectioncomment")
      return setSectionProp (p, v, 0, 1);
    if (s == "st" || s == "section_type" || s == "sectiontype")
      return setSectionProp (p, v, rewrite? 1:2, 1);
    if (s == "section_private")
      return setSectionProp (p, v, 3, 1);

    return -1;
}
The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.