diff --git a/tests/salvage/ncp_delete_smoke.c b/tests/salvage/ncp_delete_smoke.c index a55473b..bb259f2 100644 --- a/tests/salvage/ncp_delete_smoke.c +++ b/tests/salvage/ncp_delete_smoke.c @@ -120,8 +120,29 @@ int main(int argc, char **argv) ncp_close(conn); return 1; } + + err = ncp_close_file(conn, file_info.file_id); + if (err) { + fprintf(stderr, + "NCP close after create failed: path=%s error=0x%04x\n", + path, (unsigned int)err); + ncp_close(conn); + return 1; + } + if (payload) { size_t payload_len = strlen(payload); + + memset(&file_info, 0, sizeof(file_info)); + err = ncp_open_file(conn, 0, path, 0, AR_WRITE_ONLY, &file_info); + if (err) { + fprintf(stderr, + "NCP open for write failed: path=%s error=0x%04x\n", + path, (unsigned int)err); + ncp_close(conn); + return 1; + } + err = ncp_write(conn, file_info.file_id, 0, payload_len, payload); if (!err) err = ncp_write(conn, file_info.file_id, payload_len, 1, "\n"); @@ -133,18 +154,20 @@ int main(int argc, char **argv) ncp_close(conn); return 1; } + + err = ncp_close_file(conn, file_info.file_id); + if (err) { + fprintf(stderr, + "NCP close after write failed: path=%s error=0x%04x\n", + path, (unsigned int)err); + ncp_close(conn); + return 1; + } + printf("NCP write path=%s bytes=%lu verified\n", path, (unsigned long)(payload_len + 1)); } - err = ncp_close_file(conn, file_info.file_id); - if (err) { - fprintf(stderr, - "NCP close failed: path=%s error=0x%04x\n", - path, (unsigned int)err); - ncp_close(conn); - return 1; - } printf("NCP create path=%s verified\n", path); }