/* * Convert the passed-in sockaddr-style address to presentation * format, then append an option of the form "keyword=address". * * Returns 1 if the option was appended successfully; otherwise zero. */ static int nfs_append_generic_address_option(const struct sockaddr *sap, const socklen_t salen, const char *keyword, struct mount_options *options) { char address[NI_MAXHOST]; char new_option[512]; int len; if (!nfs_present_sockaddr(sap, salen, address, sizeof(address))) goto out_err; len = snprintf(new_option, sizeof(new_option), "%s=%s", keyword, address); if (len < 0 || (size_t)len >= sizeof(new_option)) goto out_err; if (po_append(options, new_option) != PO_SUCCEEDED) goto out_err; return 1; out_err: nfs_error(_("%s: failed to construct %s option"), progname, keyword); return 0; }
static void nfs_pp_debug(const struct sockaddr *sap, const socklen_t salen, const rpcprog_t program, const rpcvers_t version, const unsigned short protocol, const unsigned short port) { char buf[NI_MAXHOST]; if (!verbose) return; if (nfs_present_sockaddr(sap, salen, buf, sizeof(buf)) == 0) { buf[0] = '\0'; strcat(buf, "unknown host"); } fprintf(stderr, _("%s: trying %s prog %lu vers %lu prot %s port %d\n"), progname, buf, (unsigned long)program, (unsigned long)version, (protocol == IPPROTO_UDP ? _("UDP") : _("TCP")), port); }