face_mgmt.h

Go to the documentation of this file.
00001 /**
00002  * @file ccn/face_mgmt.h
00003  *
00004  * Part of the CCNx C Library.
00005  *
00006  * Copyright (C) 2009 Palo Alto Research Center, Inc.
00007  *
00008  * This library is free software; you can redistribute it and/or modify it
00009  * under the terms of the GNU Lesser General Public License version 2.1
00010  * as published by the Free Software Foundation.
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00014  * Lesser General Public License for more details. You should have received
00015  * a copy of the GNU Lesser General Public License along with this library;
00016  * if not, write to the Free Software Foundation, Inc., 51 Franklin Street,
00017  * Fifth Floor, Boston, MA 02110-1301 USA.
00018  */
00019 
00020 #ifndef CCN_FACE_MGMT_DEFINED
00021 #define CCN_FACE_MGMT_DEFINED
00022 
00023 #include <stddef.h>
00024 #include <ccn/charbuf.h>
00025 #include <ccn/sockcreate.h>
00026 
00027 #define CCN_NO_FACEID (~0U)
00028 
00029 struct ccn_face_instance {
00030     const char *action;
00031     const unsigned char *ccnd_id;
00032     size_t ccnd_id_size;
00033     unsigned faceid;
00034     struct ccn_sockdescr descr;
00035     int lifetime;
00036     struct ccn_charbuf *store;
00037 };
00038 
00039 struct ccn_face_instance *ccn_face_instance_parse(const unsigned char *p,
00040                                                   size_t size);
00041 
00042 void ccn_face_instance_destroy(struct ccn_face_instance**);
00043 
00044 int ccnb_append_face_instance(struct ccn_charbuf *,
00045                               const struct ccn_face_instance *);
00046 
00047 #endif

Generated on Thu Feb 16 00:43:59 2012 for Content-Centric Networking in C by  doxygen 1.5.6