aboutsummaryrefslogtreecommitdiffstats
path: root/src/client.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* main: use the GLib main loopMax Kellermann2008-12-301-1/+0
| | | | | | | 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.
* client: include winsock headers on WIN32Max Kellermann2008-12-291-1/+1
| | | | | On Windows, socket declarations reside in winsock.h and ws2tcpip.h. The POSIX headers sys/socket.h etc. are not available.
* replaced mpd_printf etc by G_GNUC_PRINTFThomas Jansen2008-12-021-3/+2
| | | | | We want to remove gcc.h eventually. This takes care of all the G_GNUC_PRINTF macros.
* command: allow clients to subscribe to specific idle eventsMarc Pavot2008-11-221-1/+1
| | | | | | 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.
* client: use boolMax Kellermann2008-10-311-1/+1
| | | | Return bool instead of int.
* added prefix to header macrosMax Kellermann2008-10-311-2/+2
| | | | | | | "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: converted permissions to unsignedMax Kellermann2008-10-171-2/+2
| | | | client->permission is a bit set, and should be unsigned.
* listen, client: enable SO_PASSCRED, get client's uidMax Kellermann2008-10-151-1/+7
| | | | | Enable authentication over unix sockets. Store the client's uid in the client struct.
* command: added command "idle"Max Kellermann2008-10-141-0/+14
| | | | | | "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.
* don't include os_compat.hMax Kellermann2008-10-081-1/+4
| | | | | When there are standardized headers, use these instead of the bloated os_compat.h.
* client: added client_[gs]et_permission()Max Kellermann2008-09-071-0/+4
| | | | | The code in command.c shouldn't mess with a pointer to client->permission. Provide an API for accessing this value.
* removed fdprintf() and client_print()Max Kellermann2008-09-071-2/+0
| | | | | | 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.
* client: removed client_get_fd()Max Kellermann2008-09-071-7/+0
| | | | | | 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.
* client: added client_printf()Max Kellermann2008-09-071-0/+11
| | | | | | 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: added client_write() and client_puts()Max Kellermann2008-09-071-0/+10
| | | | | | 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.
* export the function client_is_expired()Max Kellermann2008-08-291-0/+2
| | | | | | | 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.
* client: pass the client struct to processCommand()Max Kellermann2008-08-291-0/+9
| | | | | | | | 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.
* client: reorder function declarationsMax Kellermann2008-08-291-3/+4
| | | | | Change the order of function declarations in client.h, to make it well arranged and readable.
* client: renamed all public functionsMax Kellermann2008-08-281-6/+6
| | | | | | Functions which operate on the whole client list are prefixed with "client_manager_", and functions which handle just one client just get "client_".
* renamed interface.c to client.cMax Kellermann2008-08-281-0/+32
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.