cmdline: Print available protocols when --version is run.

This commit is contained in:
Avuton Olrich 2009-03-03 08:01:42 -08:00 committed by Max Kellermann
parent 0f64e658fd
commit e7f034dcef
4 changed files with 32 additions and 0 deletions

1
NEWS
View File

@ -49,6 +49,7 @@ ver 0.15 - (200?/??/??)
* daemon: ignore "user" setting if already running as that user
* listen: fix broken client IP addresses in log
* 32 bit audio support
* Print available protocols in --version
ver 0.14.2 (2009/02/13)

View File

@ -23,6 +23,7 @@
#include "decoder_list.h"
#include "config.h"
#include "audioOutput.h"
#include "ls.h"
#ifdef ENABLE_ARCHIVE
#include "archive_list.h"
@ -63,6 +64,10 @@ static void version(void)
archive_plugin_print_all_suffixes(stdout);
#endif
puts("\n"
"Supported protocols:\n");
print_supported_uri_schemes_to_fp(stdout);
exit(EXIT_SUCCESS);
}

View File

@ -24,6 +24,12 @@
#include <assert.h>
#include <string.h>
/**
* file:// is not included in remoteUrlPrefixes, the connection method
* is detected at runtime and displayed as a urlhandler if the client is
* connected by IPC socket.
*/
static const char *remoteUrlPrefixes[] = {
#ifdef HAVE_CURL
"http://",
@ -40,6 +46,20 @@ static const char *remoteUrlPrefixes[] = {
NULL
};
void print_supported_uri_schemes_to_fp(FILE *fp)
{
const char **prefixes = remoteUrlPrefixes;
#ifdef HAVE_UN
fprintf(fp, "file:// ");
#endif
while (*prefixes) {
fprintf(fp, "%s ", *prefixes);
prefixes++;
}
puts("\n");
}
void print_supported_uri_schemes(struct client *client)
{
const char **prefixes = remoteUrlPrefixes;

View File

@ -20,6 +20,7 @@
#define MPD_LS_H
#include <stdbool.h>
#include <stdio.h>
struct client;
@ -36,4 +37,9 @@ bool uri_supported_scheme(const char *url);
*/
void print_supported_uri_schemes(struct client *client);
/**
* Send a list of supported URI schemes to a file pointer.
*/
void print_supported_uri_schemes_to_fp(FILE *fp);
#endif