summaryrefslogtreecommitdiff
path: root/cleopatre/devkit
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/devkit')
-rw-r--r--cleopatre/devkit/plcd/Makefile3
-rw-r--r--cleopatre/devkit/plcd/inc/plcd.h4
-rw-r--r--cleopatre/devkit/plcd/src/event.c33
-rw-r--r--cleopatre/devkit/plcd/src/hpav.c2
4 files changed, 21 insertions, 21 deletions
diff --git a/cleopatre/devkit/plcd/Makefile b/cleopatre/devkit/plcd/Makefile
index 2c27f222d8..82aa0eecd5 100644
--- a/cleopatre/devkit/plcd/Makefile
+++ b/cleopatre/devkit/plcd/Makefile
@@ -7,8 +7,7 @@ LIBMME_DIR=../../application/libmme
LIBSPID_DIR=../../application/libspid
LINUX_DIR=../../linux-2.6.25.10-spc300
-INC=-I$(INCPATH) -I$(LIBMME_DIR)/inc -I$(LIBSPID_DIR)/inc -I$(LINUX_DIR)/include/asm-arm/arch-spc300 \
- -I$(LINUX_DIR)/include -I$(LINUX_DIR)/scripts/mksimage/
+INC=-I$(INCPATH) -I$(LIBMME_DIR)/inc -I$(LIBSPID_DIR)/inc -I../../include
CC=arm-linux-gcc
#CFLAGS+= $(INC) -Os -MMD
diff --git a/cleopatre/devkit/plcd/inc/plcd.h b/cleopatre/devkit/plcd/inc/plcd.h
index 4247bf48f3..c1d270680b 100644
--- a/cleopatre/devkit/plcd/inc/plcd.h
+++ b/cleopatre/devkit/plcd/inc/plcd.h
@@ -19,7 +19,7 @@
#include <sys/socket.h>
#include <stdint.h>
#include <linux/netlink.h>
-#include "asm/arch/nvram.h"
+#include "nvram.h"
#define MME_TYPE_DRV_STA_SET_MAC_ADDR 0xb000
#define MME_TYPE_DRV_STA_SET_CCO_PREF 0xb004
@@ -103,4 +103,6 @@ typedef struct {
} status;
} plcd_ctx_t;
+extern int hpav_send_single_value (const plcd_ctx_t *plcd_ctx, unsigned int mmtype, const void *value, unsigned int length);
+
#endif /* PLCD_H */
diff --git a/cleopatre/devkit/plcd/src/event.c b/cleopatre/devkit/plcd/src/event.c
index 778691efee..4c9d741cc3 100644
--- a/cleopatre/devkit/plcd/src/event.c
+++ b/cleopatre/devkit/plcd/src/event.c
@@ -62,13 +62,13 @@ static void binary_to_string (const unsigned char *binary, int binary_len, char
}
}
-static int inform_manager (plcd_ctx_t *ctx)
+int inform_manager (plcd_ctx_t *ctx)
{
assert (ctx != NULL);
return 0;
}
-static int check_sc_start (plcd_ctx_t *ctx)
+int check_sc_start (plcd_ctx_t *ctx)
{
char buffer_sc_status[16], buffer_sc_button[16];
char buffer[1024];
@@ -112,11 +112,11 @@ static int check_sc_start (plcd_ctx_t *ctx)
return 0;
}
-static int refresh_status (plcd_ctx_t *ctx, mme_ctx_t *status_ctx, int *is_save_conf_needed, int *is_info_manager_needed)
+int refresh_status (plcd_ctx_t *ctx, mme_ctx_t *status_ctx, int *is_save_conf_needed, int *is_info_manager_needed)
{
unsigned int len;
unsigned char assoc_new, cco_new, cco_preferred_new, cco_backup_new, sc_new;
- unsigned char assoc_current, cco_new_current, cco_preferred_current, cco_backup_current, sc_current, was_cco_current;
+ //unsigned char assoc_current, cco_new_current, cco_preferred_current, cco_backup_current, sc_current, was_cco_current;
char buffer[256];
assert (ctx != NULL);
@@ -189,10 +189,10 @@ static int refresh_status (plcd_ctx_t *ctx, mme_ctx_t *status_ctx, int *is_save_
return 0;
}
-static int refresh_hfid (plcd_ctx_t *ctx, mme_ctx_t *hfid_ctx, int *is_save_conf_needed)
+int refresh_hfid (plcd_ctx_t *ctx, mme_ctx_t *hfid_ctx, int *is_save_conf_needed)
{
char buffer[256], hfid[HFID_LEN];
- int len, is_avln = LIBSPID_FALSE;
+ unsigned int len, is_avln = LIBSPID_FALSE;
assert (ctx != NULL);
assert (hfid_ctx != NULL);
assert (((MME_TYPE_DRV_STA_SET_U_STA_HFID | MME_TYPE_IND) == hfid_ctx->mmtype)
@@ -216,13 +216,11 @@ static int refresh_hfid (plcd_ctx_t *ctx, mme_ctx_t *hfid_ctx, int *is_save_conf
return 0;
}
-static int refresh_key (plcd_ctx_t *ctx, mme_ctx_t *key_ctx, int *is_save_conf_needed)
+int refresh_key (plcd_ctx_t *ctx, mme_ctx_t *key_ctx, int *is_save_conf_needed)
{
- char buffer[256];
unsigned char nmk[16], nid[7], type, sl;
char nmk_str[64], nid_str[32];
- int len;
- unsigned char result;
+ unsigned int len;
assert (ctx != NULL);
assert (key_ctx != NULL);
@@ -272,8 +270,9 @@ int event_process (plcd_ctx_t *ctx)
MME_t *mme_hdr;
fd_set readfds;
struct timeval timeout;
- int result, result_len, msg_len;
- mme_ctx_t *mme_ctx;
+ int result, msg_len;
+ unsigned int result_len;
+ mme_ctx_t mme_ctx;
int is_save_conf_needed = LIBSPID_FALSE, is_info_manager_needed = LIBSPID_FALSE;
unsigned char mme_buffer[ETH_DATA_LEN];
@@ -322,25 +321,25 @@ int event_process (plcd_ctx_t *ctx)
{
/* check MMTYPE */
mme_hdr = (MME_t *)NLMSG_DATA (nlh);
- mme_init (mme_ctx, mme_hdr->mmtype, mme_buffer, ETH_DATA_LEN);
- mme_put (mme_ctx, (unsigned char *)NLMSG_DATA (nlh) + sizeof(MME_t), ETH_DATA_LEN - sizeof(MME_t), &result_len);
+ mme_init (&mme_ctx, mme_hdr->mmtype, mme_buffer, ETH_DATA_LEN);
+ mme_put (&mme_ctx, (unsigned char *)NLMSG_DATA (nlh) + sizeof(MME_t), ETH_DATA_LEN - sizeof(MME_t), &result_len);
switch(mme_hdr->mmtype)
{
case (MME_TYPE_DRV_STA_STATUS | MME_TYPE_IND):
/* check DRV_STA_STATUS content and process new
values */
- refresh_status (ctx, mme_ctx, &is_save_conf_needed, &is_info_manager_needed);
+ refresh_status (ctx, &mme_ctx, &is_save_conf_needed, &is_info_manager_needed);
break;
case (MME_TYPE_DRV_STA_SET_U_STA_HFID | MME_TYPE_IND):
case (MME_TYPE_DRV_STA_SET_AVLN_HFID | MME_TYPE_IND):
/* check DRV_STA_SET_*_HFID content and process
new values */
- refresh_hfid (ctx, mme_ctx, &is_save_conf_needed);
+ refresh_hfid (ctx, &mme_ctx, &is_save_conf_needed);
break;
case (MME_TYPE_DRV_STA_SET_KEY | MME_TYPE_IND):
/* process set key update */
- refresh_key (ctx, mme_ctx, &is_save_conf_needed);
+ refresh_key (ctx, &mme_ctx, &is_save_conf_needed);
break;
default:
syslog (LOG_WARNING, "unexpected DRV MME received (%04x)", mme_hdr->mmtype);
diff --git a/cleopatre/devkit/plcd/src/hpav.c b/cleopatre/devkit/plcd/src/hpav.c
index 9b3079efe1..8d57d7ae1a 100644
--- a/cleopatre/devkit/plcd/src/hpav.c
+++ b/cleopatre/devkit/plcd/src/hpav.c
@@ -62,7 +62,7 @@ int hpav_compute_dak (const char *dpw, unsigned char *dak)
return 0;
}
-static int hpav_send_mme (const plcd_ctx_t *plcd_ctx, mme_ctx_t *request_ctx, mme_ctx_t *confirm_ctx)
+int hpav_send_mme (const plcd_ctx_t *plcd_ctx, mme_ctx_t *request_ctx, mme_ctx_t *confirm_ctx)
{
struct sockaddr_nl kernel_addr;
struct nlmsghdr *nlh;