libpts: Skip unreadable files when measuring directories

This commit is contained in:
Tobias Brunner
2013-07-08 18:49:28 +02:00
parent 583fe0ccb6
commit 17044a753a
+2 -16
View File
@@ -302,20 +302,7 @@ pts_file_meas_t *pts_file_meas_create_from_path(u_int16_t request_id,
return NULL; return NULL;
} }
measurement = chunk_create(hash, hasher->get_hash_size(hasher)); measurement = chunk_create(hash, hasher->get_hash_size(hasher));
this = (private_pts_file_meas_t*)pts_file_meas_create(request_id);
INIT(this,
.public = {
.get_request_id = _get_request_id,
.get_file_count = _get_file_count,
.add = _add,
.create_enumerator = _create_enumerator,
.check = _check,
.verify = _verify,
.destroy = _destroy,
},
.request_id = request_id,
.list = linked_list_create(),
);
if (is_dir) if (is_dir)
{ {
@@ -338,8 +325,7 @@ pts_file_meas_t *pts_file_meas_create_from_path(u_int16_t request_id,
{ {
if (!hash_file(hasher, abs_name, hash)) if (!hash_file(hasher, abs_name, hash))
{ {
success = FALSE; continue;
break;
} }
filename = use_rel_name ? rel_name : abs_name; filename = use_rel_name ? rel_name : abs_name;
DBG2(DBG_PTS, " %#B for '%s'", &measurement, filename); DBG2(DBG_PTS, " %#B for '%s'", &measurement, filename);