start adding LGPL headers
[ust.git] / libustcomm / ustcomm.h
index e661a5518bd577631255588a1d461eadf3d9e46e..17bd9c10b084b64b46dfa3ddb513255c5bf83c73 100644 (file)
@@ -1,3 +1,20 @@
+/* Copyright (C) 2009  Pierre-Marc Fournier
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+ */
+
 #ifndef USTCOMM_H
 #define USTCOMM_H
 
@@ -11,6 +28,7 @@ struct ustcomm_connection {
        int fd;
 };
 
+/* ustcomm_server must be shallow-copyable */
 struct ustcomm_server {
        /* the "server" socket for serving the external requests */
        int listen_fd;
@@ -27,6 +45,7 @@ struct ustcomm_app {
        struct ustcomm_server server;
 };
 
+/* ustcomm_source must be shallow-copyable */
 struct ustcomm_source {
        int fd;
        void *priv;
@@ -34,7 +53,8 @@ struct ustcomm_source {
 
 char *strdup_malloc(const char *s);
 
-int send_message(pid_t pid, const char *msg, char **reply);
+//int send_message_pid(pid_t pid, const char *msg, char **reply);
+int ustcomm_request_consumer(pid_t pid, const char *channel);
 
 int ustcomm_ustd_recv_message(struct ustcomm_ustd *ustd, char **msg, struct ustcomm_source *src, int timeout);
 int ustcomm_app_recv_message(struct ustcomm_app *app, char **msg, struct ustcomm_source *src, int timeout);
@@ -43,6 +63,10 @@ int ustcomm_init_app(pid_t pid, struct ustcomm_app *handle);
 
 int ustcomm_init_ustd(struct ustcomm_ustd *handle);
 
+int ustcomm_connect_app(pid_t pid, struct ustcomm_connection *conn);
+int ustcomm_send_request(struct ustcomm_connection *conn, char *req, char **reply);
+int ustcomm_send_reply(struct ustcomm_server *server, char *msg, struct ustcomm_source *src);
+
 int nth_token_is(char *str, char *token, int tok_no);
 
 char *nth_token(char *str, int tok_no);
This page took 0.023897 seconds and 4 git commands to generate.