示例#1
0
int
mevent_app_deinit(eapd_wksp_t *nwksp)
{
	eapd_mevent_t *mevent;
	eapd_cb_t *cb, *tmp_cb;

	if (nwksp == NULL) {
		EAPD_ERROR("Wrong argument...\n");
		return -1;
	}

	mevent = &nwksp->mevent;
	cb = mevent->cb;
	while (cb) {
		/* close  brcm drvSocket */
		if (cb->brcmSocket) {
			EAPD_INFO("close mevent brcmSocket %d\n", cb->brcmSocket->drvSocket);
			eapd_del_brcm(nwksp, cb->brcmSocket);
		}

		tmp_cb = cb;
		cb = cb->next;
		free(tmp_cb);
	}

	/* close  appSocke */
	if (mevent->appSocket >= 0) {
		EAPD_INFO("close mevent appSocket %d\n", mevent->appSocket);
		close(mevent->appSocket);
		mevent->appSocket = -1;
	}

	return 0;
}
示例#2
0
int
dcs_app_deinit(eapd_wksp_t *nwksp)
{
	eapd_dcs_t *dcs;
	eapd_cb_t *cb, *tmp_cb;

	if (nwksp == NULL) {
		EAPD_ERROR("Wrong argument...\n");
		return -1;
	}

	dcs = &nwksp->dcs;
	cb = dcs->cb;
	while (cb) {
		/* close  brcm drvSocket */
		if (cb->brcmSocket) {
			EAPD_INFO("close dcs brcmSocket %d\n", cb->brcmSocket->drvSocket);
			eapd_del_brcm(nwksp, cb->brcmSocket);
		}

		tmp_cb = cb;
		cb = cb->next;
		free(tmp_cb);
	}

	/* close  appSocke */
	if (dcs->appSocket >= 0) {
		EAPD_INFO("close dcs appSocket %d\n", dcs->appSocket);
		close(dcs->appSocket);
		dcs->appSocket = -1;
	}

	return 0;
}