1153 } |
1153 } |
1154 |
1154 |
1155 char *namespace = cmd_getoption(a, "namespace"); |
1155 char *namespace = cmd_getoption(a, "namespace"); |
1156 char *property = a->argv[1]; |
1156 char *property = a->argv[1]; |
1157 |
1157 |
|
1158 DavPropName propname; |
|
1159 if(namespace) { |
|
1160 propname.ns = namespace; |
|
1161 propname.name = property; |
|
1162 } else { |
|
1163 dav_get_property_namespace_str(ctx, property, &propname.ns, &propname.name); |
|
1164 } |
|
1165 |
1158 DavResource *res = dav_resource_new(sn, path); |
1166 DavResource *res = dav_resource_new(sn, path); |
1159 for(int i=0;i<2;i++) { |
1167 for(int i=0;i<2;i++) { |
1160 if(dav_load(res)) { |
1168 if(dav_load_prop(res, &propname, 1)) { |
1161 if(i == 0 && sn->error == DAV_UNAUTHORIZED && request_auth(repo, sn, a)) { |
1169 if(i == 0 && sn->error == DAV_UNAUTHORIZED && request_auth(repo, sn, a)) { |
1162 continue; |
1170 continue; |
1163 } |
1171 } |
1164 print_resource_error(sn, res->path); |
1172 print_resource_error(sn, res->path); |
1165 return -1; |
1173 return -1; |
1166 } |
1174 } |
1167 break; |
1175 break; |
1168 } |
1176 } |
1169 |
1177 |
1170 char *value = namespace ? |
1178 char *value = dav_get_property_ns(res, propname.ns, propname.name); |
1171 dav_get_property_ns(res, namespace, property) : |
|
1172 dav_get_property(res, property); |
|
1173 if(!value) { |
1179 if(!value) { |
1174 fprintf(stderr, "Error: no property value.\n"); |
1180 fprintf(stderr, "Error: no property value.\n"); |
1175 return -1; |
1181 return -1; |
1176 } |
1182 } |
1177 |
1183 |