Lines Matching refs:ias_opt
1877 struct irda_ias_set *ias_opt; in irda_setsockopt() local
1903 ias_opt = kmalloc(sizeof(struct irda_ias_set), GFP_ATOMIC); in irda_setsockopt()
1904 if (ias_opt == NULL) { in irda_setsockopt()
1910 if (copy_from_user(ias_opt, optval, optlen)) { in irda_setsockopt()
1911 kfree(ias_opt); in irda_setsockopt()
1920 if(ias_opt->irda_class_name[0] == '\0') { in irda_setsockopt()
1922 kfree(ias_opt); in irda_setsockopt()
1928 ias_obj = irias_find_object(ias_opt->irda_class_name); in irda_setsockopt()
1935 kfree(ias_opt); in irda_setsockopt()
1943 ias_obj = irias_new_object(ias_opt->irda_class_name, in irda_setsockopt()
1946 kfree(ias_opt); in irda_setsockopt()
1954 if(irias_find_attrib(ias_obj, ias_opt->irda_attrib_name)) { in irda_setsockopt()
1955 kfree(ias_opt); in irda_setsockopt()
1965 switch(ias_opt->irda_attrib_type) { in irda_setsockopt()
1970 ias_opt->irda_attrib_name, in irda_setsockopt()
1971 ias_opt->attribute.irda_attrib_int, in irda_setsockopt()
1976 if(ias_opt->attribute.irda_attrib_octet_seq.len > in irda_setsockopt()
1978 kfree(ias_opt); in irda_setsockopt()
1990 ias_opt->irda_attrib_name, in irda_setsockopt()
1991 ias_opt->attribute.irda_attrib_octet_seq.octet_seq, in irda_setsockopt()
1992 ias_opt->attribute.irda_attrib_octet_seq.len, in irda_setsockopt()
2003 ias_opt->attribute.irda_attrib_string.string[ias_opt->attribute.irda_attrib_string.len] = '\0'; in irda_setsockopt()
2007 ias_opt->irda_attrib_name, in irda_setsockopt()
2008 ias_opt->attribute.irda_attrib_string.string, in irda_setsockopt()
2012 kfree(ias_opt); in irda_setsockopt()
2021 kfree(ias_opt); in irda_setsockopt()
2034 ias_opt = kmalloc(sizeof(struct irda_ias_set), GFP_ATOMIC); in irda_setsockopt()
2035 if (ias_opt == NULL) { in irda_setsockopt()
2041 if (copy_from_user(ias_opt, optval, optlen)) { in irda_setsockopt()
2042 kfree(ias_opt); in irda_setsockopt()
2051 if(ias_opt->irda_class_name[0] == '\0') in irda_setsockopt()
2054 ias_obj = irias_find_object(ias_opt->irda_class_name); in irda_setsockopt()
2056 kfree(ias_opt); in irda_setsockopt()
2066 kfree(ias_opt); in irda_setsockopt()
2073 ias_opt->irda_attrib_name); in irda_setsockopt()
2075 kfree(ias_opt); in irda_setsockopt()
2084 kfree(ias_opt); in irda_setsockopt()
2091 kfree(ias_opt); in irda_setsockopt()
2182 static int irda_extract_ias_value(struct irda_ias_set *ias_opt, in irda_extract_ias_value() argument
2189 ias_opt->attribute.irda_attrib_int = ias_value->t.integer; in irda_extract_ias_value()
2193 ias_opt->attribute.irda_attrib_octet_seq.len = ias_value->len; in irda_extract_ias_value()
2195 memcpy(ias_opt->attribute.irda_attrib_octet_seq.octet_seq, in irda_extract_ias_value()
2200 ias_opt->attribute.irda_attrib_string.len = ias_value->len; in irda_extract_ias_value()
2201 ias_opt->attribute.irda_attrib_string.charset = ias_value->charset; in irda_extract_ias_value()
2203 memcpy(ias_opt->attribute.irda_attrib_string.string, in irda_extract_ias_value()
2206 ias_opt->attribute.irda_attrib_string.string[ias_value->len] = '\0'; in irda_extract_ias_value()
2214 ias_opt->irda_attrib_type = ias_value->type; in irda_extract_ias_value()
2229 struct irda_ias_set * ias_opt; /* IAS get/query params */ in irda_getsockopt() local
2319 ias_opt = kmalloc(sizeof(struct irda_ias_set), GFP_ATOMIC); in irda_getsockopt()
2320 if (ias_opt == NULL) { in irda_getsockopt()
2326 if (copy_from_user(ias_opt, optval, len)) { in irda_getsockopt()
2327 kfree(ias_opt); in irda_getsockopt()
2336 if(ias_opt->irda_class_name[0] == '\0') in irda_getsockopt()
2339 ias_obj = irias_find_object(ias_opt->irda_class_name); in irda_getsockopt()
2341 kfree(ias_opt); in irda_getsockopt()
2348 ias_opt->irda_attrib_name); in irda_getsockopt()
2350 kfree(ias_opt); in irda_getsockopt()
2356 err = irda_extract_ias_value(ias_opt, ias_attr->value); in irda_getsockopt()
2358 kfree(ias_opt); in irda_getsockopt()
2363 if (copy_to_user(optval, ias_opt, in irda_getsockopt()
2365 kfree(ias_opt); in irda_getsockopt()
2370 kfree(ias_opt); in irda_getsockopt()
2383 ias_opt = kmalloc(sizeof(struct irda_ias_set), GFP_ATOMIC); in irda_getsockopt()
2384 if (ias_opt == NULL) { in irda_getsockopt()
2390 if (copy_from_user(ias_opt, optval, len)) { in irda_getsockopt()
2391 kfree(ias_opt); in irda_getsockopt()
2411 daddr = ias_opt->daddr; in irda_getsockopt()
2413 kfree(ias_opt); in irda_getsockopt()
2423 kfree(ias_opt); in irda_getsockopt()
2432 kfree(ias_opt); in irda_getsockopt()
2443 ias_opt->irda_class_name, in irda_getsockopt()
2444 ias_opt->irda_attrib_name); in irda_getsockopt()
2451 kfree(ias_opt); in irda_getsockopt()
2460 kfree(ias_opt); in irda_getsockopt()
2472 err = irda_extract_ias_value(ias_opt, self->ias_result); in irda_getsockopt()
2476 kfree(ias_opt); in irda_getsockopt()
2481 if (copy_to_user(optval, ias_opt, in irda_getsockopt()
2483 kfree(ias_opt); in irda_getsockopt()
2488 kfree(ias_opt); in irda_getsockopt()