# include "config.h"
#endif
+#include "lcc_features.h"
+
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
} while (0)
#define SSTRCAT(d,s) do { \
- strncat ((d), (s), sizeof (d)); \
+ size_t _l = strlen (d); \
+ strncpy ((d) + _l, (s), sizeof (d) - _l); \
(d)[sizeof (d) - 1] = 0; \
} while (0)
assert (c->fh == NULL);
assert (path != NULL);
- fd = socket (PF_UNIX, SOCK_STREAM, /* protocol = */ 0);
+ /* Don't use PF_UNIX here, because it's broken on Mac OS X (10.4, possibly
+ * others). */
+ fd = socket (AF_UNIX, SOCK_STREAM, /* protocol = */ 0);
if (fd < 0)
{
lcc_set_errno (c, errno);
/*
* Public functions
*/
+unsigned int lcc_version (void) /* {{{ */
+{
+ return (LCC_VERSION);
+} /* }}} unsigned int lcc_version */
+
+const char *lcc_version_string (void) /* {{{ */
+{
+ return (LCC_VERSION_STRING);
+} /* }}} const char *lcc_version_string */
+
+const char *lcc_version_extra (void) /* {{{ */
+{
+ return (LCC_VERSION_EXTRA);
+} /* }}} const char *lcc_version_extra */
+
int lcc_connect (const char *address, lcc_connection_t **ret_con) /* {{{ */
{
lcc_connection_t *c;
key = res.lines[i];
value = strchr (key, '=');
if (value == NULL)
- BAIL_OUT (EPROTO);
+ BAIL_OUT (EILSEQ);
*value = 0;
value++;
int lcc_flush (lcc_connection_t *c, const char *plugin, /* {{{ */
lcc_identifier_t *ident, int timeout)
{
- char command[1024];
+ char command[1024] = "";
lcc_response_t res;
int status;
if (*ident_str == 0)
{
- lcc_set_errno (c, EPROTO);
+ lcc_set_errno (c, EILSEQ);
status = -1;
break;
}