| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Removed the sockaddr_to_tmp_string() hack, use
the new function sockaddr_to_string() instead.
|
|
|
|
|
|
| |
With the GLib main loop, the client manager can install its own event
in case a client is expired. No need for main.c to call
client_manager_expire() manually.
|
|
|
|
|
|
|
| |
This is a rather huge patch, which unfortunately cannot be splitted.
Instead of using our custom ioops.h library, convert everything to use
the GLib main loop.
|
|
|
|
|
| |
On Windows, socket declarations reside in winsock.h and ws2tcpip.h.
The POSIX headers sys/socket.h etc. are not available.
|
|
|
|
|
| |
We want to remove gcc.h eventually. This takes care of all the G_GNUC_PRINTF
macros.
|
|
|
|
|
|
| |
The client may provide the names of idle events as arguments to the
"idle" command to inform MPD that it is only interested in these
events.
|
|
|
|
| |
Return bool instead of int.
|
|
|
|
|
|
|
| |
"LOG_H" is a macro which is also used by ffmpeg/log.h. This is
ffmpeg's fault, because short macros should be reserved for
applications, but since it's always a good idea to choose prefixed
macro names, even for applications, we are going to do that in MPD.
|
|
|
|
| |
client->permission is a bit set, and should be unsigned.
|
|
|
|
|
| |
Enable authentication over unix sockets. Store the client's uid in
the client struct.
|
|
|
|
|
|
| |
"idle" waits until something noteworthy happens on the server,
e.g. song change, playlist modified, database updated. This allows
clients to keep up to date without polling.
|
|
|
|
|
| |
When there are standardized headers, use these instead of the bloated
os_compat.h.
|
|
|
|
|
| |
The code in command.c shouldn't mess with a pointer to
client->permission. Provide an API for accessing this value.
|
|
|
|
|
|
| |
All callers of fdprintf() have been converted to client_printf() or
fprintf(); it is time to remove this clumsy hack now. We can also
remove client_print() which took a file descriptor as parameter.
|
|
|
|
|
|
| |
Now that we have removed all invocations of client_get_fd(), we can
safely remove this transitional function. All access to the file
descriptor is now hidden behind the interface declared in client.h.
|
|
|
|
|
|
| |
Based on client_puts(), client_printf() is the successor of
fdprintf(). As soon as all fdprintf() callers have been rewritten to
use client_printf(), we can remove fdprintf().
|
|
|
|
|
|
| |
client_write() writes a buffer to the client and buffers it if
required. client_puts() does the same for a C string. The next patch
will add more tools which will replace fdprintf() later.
|
|
|
|
|
|
|
| |
Instead of passing the pointer to the "expired" flag to
processListOfCommands(), this function should use the client API to
check this flag. We can now remove the "global_expired" hack
introduced recently.
|
|
|
|
|
|
|
|
| |
Start exporting the client struct as an opaque struct. For now, pass
it only to processCommand() and processListOfCommands(), and provide a
function to extract the socket handle. Later, we will propagate the
pointer to all command implementations, and of course to
client_print() etc.
|
|
|
|
|
| |
Change the order of function declarations in client.h, to make it well
arranged and readable.
|
|
|
|
|
|
| |
Functions which operate on the whole client list are prefixed with
"client_manager_", and functions which handle just one client just get
"client_".
|
|
I don't believe "interface" is a good name for something like
"connection by a client to MPD", let's call it "client". This is the
first patch in the series which changes the name, beginning with the
file name.
|