Lines Matching refs:errp

69                                    Error **errp)  in nbd_send_option_request()  argument
84 if (nbd_write(ioc, &req, sizeof(req), errp) < 0) { in nbd_send_option_request()
85 error_prepend(errp, "Failed to send option request header: "); in nbd_send_option_request()
89 if (len && nbd_write(ioc, (char *) data, len, errp) < 0) { in nbd_send_option_request()
90 error_prepend(errp, "Failed to send option request data: "); in nbd_send_option_request()
115 NBDOptionReply *reply, Error **errp) in nbd_receive_option_reply() argument
118 if (nbd_read(ioc, reply, sizeof(*reply), "option reply", errp) < 0) { in nbd_receive_option_reply()
132 error_setg(errp, "Unexpected option reply magic"); in nbd_receive_option_reply()
137 error_setg(errp, "Unexpected option type %u (%s), expected %u (%s)", in nbd_receive_option_reply()
155 bool strict, Error **errp) in nbd_handle_reply_err() argument
166 error_setg(errp, "server error %" PRIu32 in nbd_handle_reply_err()
172 if (nbd_read(ioc, msg, reply->length, NULL, errp) < 0) { in nbd_handle_reply_err()
173 error_prepend(errp, "Failed to read option error %" PRIu32 in nbd_handle_reply_err()
192 error_setg(errp, "Denied by server for option %" PRIu32 " (%s)", in nbd_handle_reply_err()
197 error_setg(errp, "Invalid parameters for option %" PRIu32 " (%s)", in nbd_handle_reply_err()
202 error_setg(errp, "Server lacks support for option %" PRIu32 " (%s)", in nbd_handle_reply_err()
207 error_setg(errp, "TLS negotiation required before option %" PRIu32 in nbd_handle_reply_err()
209 error_append_hint(errp, "Did you forget a valid tls-creds?\n"); in nbd_handle_reply_err()
213 error_setg(errp, "Requested export not available"); in nbd_handle_reply_err()
217 error_setg(errp, "Server shutting down before option %" PRIu32 " (%s)", in nbd_handle_reply_err()
222 error_setg(errp, "Server requires INFO_BLOCK_SIZE for option %" PRIu32 in nbd_handle_reply_err()
227 error_setg(errp, "Unknown error code when asking for option %" PRIu32 in nbd_handle_reply_err()
233 error_append_hint(errp, "server reported: %s\n", msg); in nbd_handle_reply_err()
251 Error **errp) in nbd_receive_list() argument
260 if (nbd_receive_option_reply(ioc, NBD_OPT_LIST, &reply, errp) < 0) { in nbd_receive_list()
263 error = nbd_handle_reply_err(ioc, &reply, true, errp); in nbd_receive_list()
271 error_setg(errp, "length too long for option end"); in nbd_receive_list()
277 error_setg(errp, "Unexpected reply type %u (%s), expected %u (%s)", in nbd_receive_list()
285 error_setg(errp, "incorrect option length %" PRIu32, len); in nbd_receive_list()
289 if (nbd_read32(ioc, &namelen, "option name length", errp) < 0) { in nbd_receive_list()
295 error_setg(errp, "incorrect name length in server's list response"); in nbd_receive_list()
301 if (nbd_read(ioc, local_name, namelen, "export name", errp) < 0) { in nbd_receive_list()
309 error_setg(errp, "incorrect description length in server's " in nbd_receive_list()
315 if (nbd_read(ioc, local_desc, len, "export description", errp) < 0) { in nbd_receive_list()
340 NBDExportInfo *info, Error **errp) in nbd_opt_info_or_go() argument
366 buf, errp); in nbd_opt_info_or_go()
373 if (nbd_receive_option_reply(ioc, opt, &reply, errp) < 0) { in nbd_opt_info_or_go()
376 error = nbd_handle_reply_err(ioc, &reply, true, errp); in nbd_opt_info_or_go()
388 error_setg(errp, "server sent invalid NBD_REP_ACK"); in nbd_opt_info_or_go()
392 error_setg(errp, "broken server omitted NBD_INFO_EXPORT"); in nbd_opt_info_or_go()
399 error_setg(errp, "unexpected reply type %u (%s), expected %u (%s)", in nbd_opt_info_or_go()
406 error_setg(errp, "NBD_REP_INFO length %" PRIu32 " is too short", in nbd_opt_info_or_go()
411 if (nbd_read16(ioc, &type, "info type", errp) < 0) { in nbd_opt_info_or_go()
419 error_setg(errp, "remaining export info len %" PRIu32 in nbd_opt_info_or_go()
424 if (nbd_read64(ioc, &info->size, "info size", errp) < 0) { in nbd_opt_info_or_go()
428 if (nbd_read16(ioc, &info->flags, "info flags", errp) < 0) { in nbd_opt_info_or_go()
434 error_setg(errp, "export size %" PRIu64 " is not multiple of " in nbd_opt_info_or_go()
445 error_setg(errp, "remaining export info len %" PRIu32 in nbd_opt_info_or_go()
451 errp) < 0) { in nbd_opt_info_or_go()
456 error_setg(errp, "server minimum block size %" PRIu32 in nbd_opt_info_or_go()
462 errp) < 0) in nbd_opt_info_or_go()
469 error_setg(errp, "server preferred block size %" PRIu32 in nbd_opt_info_or_go()
475 errp) < 0) in nbd_opt_info_or_go()
481 error_setg(errp, "server maximum block size %" PRIu32 in nbd_opt_info_or_go()
496 if (nbd_drop(ioc, len, errp) < 0) { in nbd_opt_info_or_go()
497 error_prepend(errp, "Failed to read info payload: "); in nbd_opt_info_or_go()
509 Error **errp) in nbd_receive_query_exports() argument
515 if (nbd_send_option_request(ioc, NBD_OPT_LIST, 0, NULL, errp) < 0) { in nbd_receive_query_exports()
521 int ret = nbd_receive_list(ioc, &name, NULL, errp); in nbd_receive_query_exports()
539 error_setg(errp, "No export with name '%s' available", in nbd_receive_query_exports()
563 Error **errp) in nbd_request_simple_option() argument
568 if (nbd_send_option_request(ioc, opt, 0, NULL, errp) < 0) { in nbd_request_simple_option()
572 if (nbd_receive_option_reply(ioc, opt, &reply, errp) < 0) { in nbd_request_simple_option()
575 error = nbd_handle_reply_err(ioc, &reply, strict, errp); in nbd_request_simple_option()
581 error_setg(errp, "Server answered option %d (%s) with unexpected " in nbd_request_simple_option()
589 error_setg(errp, "Option %d ('%s') response length is %" PRIu32 in nbd_request_simple_option()
619 const char *hostname, Error **errp) in nbd_receive_starttls() argument
625 ret = nbd_request_simple_option(ioc, NBD_OPT_STARTTLS, true, errp); in nbd_receive_starttls()
628 error_setg(errp, "Server don't support STARTTLS option"); in nbd_receive_starttls()
635 tioc = qio_channel_tls_new_client(ioc, tlscreds, hostname, errp); in nbd_receive_starttls()
655 error_propagate(errp, data.error); in nbd_receive_starttls()
670 Error **errp) in nbd_send_meta_query() argument
701 ret = nbd_send_option_request(ioc, opt, data_len, data, errp); in nbd_send_meta_query()
719 Error **errp) in nbd_receive_one_meta_context() argument
726 if (nbd_receive_option_reply(ioc, opt, &reply, errp) < 0) { in nbd_receive_one_meta_context()
730 ret = nbd_handle_reply_err(ioc, &reply, false, errp); in nbd_receive_one_meta_context()
737 error_setg(errp, "Unexpected length to ACK response"); in nbd_receive_one_meta_context()
743 error_setg(errp, "Unexpected reply type %u (%s), expected %u (%s)", in nbd_receive_one_meta_context()
752 error_setg(errp, "Failed to negotiate meta context, server " in nbd_receive_one_meta_context()
759 if (nbd_read32(ioc, &local_id, "context id", errp) < 0) { in nbd_receive_one_meta_context()
765 if (nbd_read(ioc, local_name, reply.length, "context name", errp) < 0) { in nbd_receive_one_meta_context()
796 Error **errp) in nbd_negotiate_simple_meta_context() argument
810 info->name, context, errp) < 0) { in nbd_negotiate_simple_meta_context()
815 &name, &info->context_id, errp); in nbd_negotiate_simple_meta_context()
821 error_setg(errp, "Failed to negotiate meta context '%s', server " in nbd_negotiate_simple_meta_context()
832 NULL, NULL, errp); in nbd_negotiate_simple_meta_context()
838 error_setg(errp, "Server answered with more than one context"); in nbd_negotiate_simple_meta_context()
853 Error **errp) in nbd_list_meta_contexts() argument
860 info->name, NULL, errp) < 0) { in nbd_list_meta_contexts()
868 &context, NULL, errp); in nbd_list_meta_contexts()
878 info->name, "qemu:", errp) < 0) { in nbd_list_meta_contexts()
903 Error **errp) in nbd_start_negotiate() argument
917 error_setg(errp, "Output I/O channel required for TLS"); in nbd_start_negotiate()
921 if (nbd_read64(ioc, &magic, "initial magic", errp) < 0) { in nbd_start_negotiate()
927 error_setg(errp, "Bad initial magic received: 0x%" PRIx64, magic); in nbd_start_negotiate()
931 if (nbd_read64(ioc, &magic, "server magic", errp) < 0) { in nbd_start_negotiate()
941 if (nbd_read16(ioc, &globalflags, "server flags", errp) < 0) { in nbd_start_negotiate()
957 if (nbd_write(ioc, &clientflags, sizeof(clientflags), errp) < 0) { in nbd_start_negotiate()
958 error_prepend(errp, "Failed to send clientflags field: "); in nbd_start_negotiate()
963 *outioc = nbd_receive_starttls(ioc, tlscreds, hostname, errp); in nbd_start_negotiate()
969 error_setg(errp, "Server does not support STARTTLS"); in nbd_start_negotiate()
979 false, errp); in nbd_start_negotiate()
987 false, errp); in nbd_start_negotiate()
998 error_setg(errp, "Server does not support STARTTLS"); in nbd_start_negotiate()
1003 error_setg(errp, "Bad server magic received: 0x%" PRIx64, magic); in nbd_start_negotiate()
1015 Error **errp) in nbd_negotiate_finish_oldstyle() argument
1019 if (nbd_read64(ioc, &info->size, "export length", errp) < 0) { in nbd_negotiate_finish_oldstyle()
1023 if (nbd_read32(ioc, &oldflags, "export flags", errp) < 0) { in nbd_negotiate_finish_oldstyle()
1027 error_setg(errp, "Unexpected export flags %0x" PRIx32, oldflags); in nbd_negotiate_finish_oldstyle()
1042 NBDExportInfo *info, Error **errp) in nbd_receive_negotiate() argument
1053 info->mode, &zeroes, errp); in nbd_receive_negotiate()
1068 result = nbd_negotiate_simple_meta_context(ioc, info, errp); in nbd_receive_negotiate()
1081 result = nbd_opt_info_or_go(ioc, NBD_OPT_GO, info, errp); in nbd_receive_negotiate()
1094 if (nbd_receive_query_exports(ioc, info->name, errp) < 0) { in nbd_receive_negotiate()
1101 errp) < 0) { in nbd_receive_negotiate()
1106 if (nbd_read64(ioc, &info->size, "export length", errp) < 0) { in nbd_receive_negotiate()
1110 if (nbd_read16(ioc, &info->flags, "export flags", errp) < 0) { in nbd_receive_negotiate()
1116 error_setg(errp, "Server does not support non-empty export names"); in nbd_receive_negotiate()
1119 if (nbd_negotiate_finish_oldstyle(ioc, info, errp) < 0) { in nbd_receive_negotiate()
1128 if (zeroes && nbd_drop(ioc, 124, errp) < 0) { in nbd_receive_negotiate()
1129 error_prepend(errp, "Failed to read reserved block: "); in nbd_receive_negotiate()
1164 Error **errp) in nbd_receive_export_list() argument
1176 NBD_MODE_EXTENDED, NULL, errp); in nbd_receive_export_list()
1191 if (nbd_send_option_request(ioc, NBD_OPT_LIST, 0, NULL, errp) < 0) { in nbd_receive_export_list()
1198 rc = nbd_receive_list(ioc, &name, &desc, errp); in nbd_receive_export_list()
1213 rc = nbd_opt_info_or_go(ioc, NBD_OPT_INFO, &array[i], errp); in nbd_receive_export_list()
1225 nbd_list_meta_contexts(ioc, &array[i], errp) < 0) { in nbd_receive_export_list()
1234 error_setg(errp, "Server does not support export lists"); in nbd_receive_export_list()
1244 if (nbd_negotiate_finish_oldstyle(ioc, array, errp) < 0) { in nbd_receive_export_list()
1274 Error **errp) in nbd_init() argument
1284 error_setg(errp, "Export size %" PRIu64 " too large for 32-bit kernel", in nbd_init()
1293 error_setg(errp, "Failed to set NBD socket"); in nbd_init()
1301 error_setg(errp, "Failed setting NBD block size"); in nbd_init()
1312 error_setg(errp, "Failed setting size (in blocks)"); in nbd_init()
1323 error_setg(errp, "Failed setting read-only attribute"); in nbd_init()
1328 error_setg(errp, "Failed setting flags"); in nbd_init()
1410 Error **errp) in nbd_receive_simple_reply() argument
1417 sizeof(*reply) - sizeof(reply->magic), "reply", errp); in nbd_receive_simple_reply()
1434 Error **errp) in nbd_receive_reply_chunk_header() argument
1449 errp); in nbd_receive_reply_chunk_header()
1473 error_setg(errp, "server chunk %" PRIu32 " (%s) payload is too long", in nbd_receive_reply_chunk_header()
1491 Error **errp) in nbd_read_eof() argument
1500 len = qio_channel_readv(ioc, &iov, 1, errp); in nbd_read_eof()
1508 error_setg(errp, in nbd_read_eof()
1535 NBDReply *reply, NBDMode mode, Error **errp) in nbd_receive_reply() argument
1541 ret = nbd_read_eof(bs, ioc, &reply->magic, sizeof(reply->magic), errp); in nbd_receive_reply()
1555 ret = nbd_receive_simple_reply(ioc, &reply->simple, errp); in nbd_receive_reply()
1571 ret = nbd_receive_reply_chunk_header(ioc, reply, errp); in nbd_receive_reply()
1583 error_setg(errp, "invalid magic (got 0x%" PRIx32 ")", reply->magic); in nbd_receive_reply()