/*
 *  call-seq:
 *  	File.set_attr(filename, attribute, attribute_value) -> attribute_value
 *
 *  Sets the attribute <i>attribute</i> for the file <i>filename</i>
 *
 *  	File.set_attr("test.rb", "description", "test script") # => "test script"
 *
 */


static VALUE rb_file_set_attr(obj, fname, aname, aval)
	VALUE obj, fname, aname, aval;
{
	int ret;

	Check_Type(fname, T_STRING);
	Check_Type(aname, T_STRING);
	Check_Type(aval, T_STRING);

	ret = attr_set(StringValueCStr(fname), StringValueCStr(aname), 
			StringValueCStr(aval), RSTRING(aval)->len, 1);
	if(ret == 0) {
		return aval;
	} else {
		rb_sys_fail(StringValueCStr(fname));
	}
}