zte's code,first commit

Change-Id: I9a04da59e459a9bc0d67f101f700d9d7dc8d681b
diff --git a/ap/lib/libdmgr/inc/fota_comm.h b/ap/lib/libdmgr/inc/fota_comm.h
new file mode 100644
index 0000000..5828218
--- /dev/null
+++ b/ap/lib/libdmgr/inc/fota_comm.h
@@ -0,0 +1,127 @@
+#ifndef _FOTA_COMM_H_
+#define _FOTA_COMM_H_
+
+
+#include "dmgr_api.h"
+
+#include "fota_protocol_util.h"
+#include "fota_http_util.h"
+
+#include "curl_adapter.h"
+#include "assert.h"
+#include <fcntl.h>
+
+
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <string.h>
+
+//#define MEM_DEBUG
+
+
+void dump_mem_info(void);
+
+#define fota_sleep     sleep
+#define fota_assert    assert
+#define fota_ftruncate ftruncate
+
+#ifdef MEM_DEBUG
+
+void* realloc_debug(void *ptr, size_t size, const char*func, long line);
+void* malloc_debug(size_t bytes, const char* func, long line);
+void free_debug(void*p, const char* func, long line);
+char* strdup_debug(const char* str, const char* func, long line);
+
+#define fota_malloc(size)    		malloc_debug(size, __FUNCTION__, __LINE__)
+#define fota_free(ptr)     		do{if(ptr) free_debug(ptr, __FUNCTION__, __LINE__); ptr=NULL;}while(0)
+#define fota_strdup(str)    		strdup_debug(str, __FUNCTION__, __LINE__)
+#define fota_realloc(ptr, size)   	realloc_debug(ptr, size, __FUNCTION__, __LINE__)
+#else
+#define fota_malloc(size)    		malloc(size)
+#define fota_free(ptr)     		do{if(ptr) free(ptr); ptr=NULL;}while(0)
+#define fota_strdup(str)    		strdup(str)
+#define fota_realloc(ptr, size)   	realloc(ptr, size)
+
+#endif
+
+
+#define FOTA_FAIL             -1
+#define FOTA_SUCCESS           0
+#define FOTA_ERROR            -1
+
+
+
+#define  LOGD(fmt, args ...) \
+    do { printf("[DMGR][%s-%d]:"fmt, __FUNCTION__, __LINE__, ##args); } while (0)
+
+
+
+#define FOTA_DEFAULT_URL    	"http://fotazxic.zte.com.cn/Fota/Download.do"
+
+#define DEFAULT_DL_URL 		"http://47.96.134.20/Fota/"
+
+#define FOTA_SERVER_DOMAIN_NAME "fotazxic.zte.com.cn"
+
+#define VERSION_FILE           	"version_file"
+#define REG_POLICY_INFO        	"policy_info"
+
+#define HTTP_LINE_ENDING        "\r\n"
+
+/* fota版本号 */
+#define FOTA_VERSION            1
+#define ZX_FOTA_DM_LIB_VERSION  "zte dmgr lib version 1.0.0"
+
+/* #define NB_7100 */
+#ifdef NB_7100
+#define PROTOCOL_VERSION  "2.0"
+#else
+#define PROTOCOL_VERSION  "2.1"
+#endif
+
+/* action code */
+#define SESSION_OPEN            0x8000
+#define REGISTER_DEVICE_INFO    0x8001
+#define REGISTER_POLICY_INFO    0x8002
+#define CHECK_VRESION        	0x8003
+#define DOWNLOAD_VRESION    	0x8004
+#define UPDATE_RESULT       	0x8005
+#define SESSION_CLOSE       	0x8006
+
+
+typedef enum {
+    UPGRADE_OK = 0,
+    UPGRADE_FAIL
+} UPGRADE_RESULT;
+
+
+typedef struct {
+    char            	*IMEI;
+    char            	*download_url;
+    char            	*version_path;
+    unsigned int     	devNum;
+    char            	*dev_info;
+    policy_info_t   	*policy_info;
+
+} config_info_t;
+
+
+typedef struct {
+    long 	resp_code;
+    int 	result_code;
+    int 	action_code;
+} post_result_t;
+
+
+
+typedef struct {
+    config_info_t       config_info;
+    notifier_block_t    *notifier_list[MAX_USER_NOTIFIERS];
+    post_result_t       post_result;
+    download_info_t 	download_info;
+
+} dmgr_info_t;
+
+extern dmgr_t g_dmgr;
+
+#endif /* _FOTA_COMM_H_ */