コード例 #1
0
ファイル: 10.c プロジェクト: basheerk/autotest-client-tests
int run_test2(SaHpiSessionIdT sessionId,
	      SaHpiResourceIdT resourceId,
	      SaHpiAnnunciatorRecT * annunRec, SaHpiSeverityT severity)
{
	SaErrorT status;
	int retval;
	SaHpiAnnunciatorModeT mode;
	SaHpiAnnunciatorNumT a_num = annunRec->AnnunciatorNum;

	status = setWriteMode(sessionId, resourceId, annunRec, &mode);
	if (status == ANNUN_ERROR) {
		e_trace();
		retval = SAF_TEST_UNRESOLVED;
	} else if (status == ANNUN_READONLY) {
		retval = SAF_TEST_NOTSUPPORT;
	} else {
		status = saHpiAnnunciatorDelete(sessionId, resourceId, a_num,
						SAHPI_ENTRY_UNSPECIFIED,
						severity);

		if (status == SA_OK) {
			retval =
			    run_test1(sessionId, resourceId, a_num, severity);
		} else {
			e_print(saHpiAnnunciatorDelete, SA_OK, status);
			retval = SAF_TEST_UNRESOLVED;
		}

		restoreMode(sessionId, resourceId, a_num, mode);
	}

	return retval;
}
コード例 #2
0
ファイル: 3.c プロジェクト: basheerk/autotest-client-tests
int processAnnunRdr(SaHpiSessionIdT sessionId,
		    SaHpiResourceIdT resourceId,
		    SaHpiRdrT * rdr, SaHpiAnnunciatorRecT * annunRec)
{
	SaErrorT status;
	int retval;
	SaHpiAnnunciatorNumT a_num = annunRec->AnnunciatorNum;
	SaHpiAnnunciatorModeT mode;
	SaHpiAnnouncementT announcement;
	SaHpiBoolT found;

	status = setWriteMode(sessionId, resourceId, annunRec, &mode);
	if (status == ANNUN_ERROR) {
		e_trace();
		retval = SAF_TEST_UNRESOLVED;
	} else if (status == ANNUN_READONLY) {
		retval = SAF_TEST_NOTSUPPORT;
	} else {

		status = addInfoAnnouncement(sessionId, resourceId,
					     a_num, &announcement);

		if (status != SA_OK) {
			m_print("addInfoAnnouncement fail!");
			retval = SAF_TEST_UNRESOLVED;
		} else {
			status = saHpiAnnunciatorDelete(sessionId, resourceId,
							a_num,
							announcement.EntryId,
							SAHPI_INFORMATIONAL);

			if (status != SA_OK) {
				retval = SAF_TEST_FAIL;
				e_print(saHpiAnnunciatorDelete, SA_OK, status);
			} else {
				status =
				    containsAnnouncement(sessionId, resourceId,
							 a_num,
							 announcement.EntryId,
							 &found);
				if (status != SA_OK) {
					e_trace();
					retval = SAF_TEST_UNRESOLVED;
				} else if (!found) {
					retval = SAF_TEST_PASS;
				} else {
					retval = SAF_TEST_FAIL;
					m_print
					    ("saHpiAnnunciatorDelete failed to remove announcement!");
				}
			}
		}

		restoreMode(sessionId, resourceId, a_num, mode);
	}

	return retval;
}
コード例 #3
0
ファイル: sim_sanity_022.c プロジェクト: openhpi1/testrepo
int main(int argc, char **argv)
{
	SaHpiSessionIdT sid = 0;
        SaHpiAnnouncementT announ;
	SaErrorT rc = SA_OK;

        rc = saHpiSessionOpen(SAHPI_UNSPECIFIED_DOMAIN_ID, &sid, NULL);
	if (rc != SA_OK) {
		dbg("Failed to open session");
                return -1;
	}

	rc = saHpiDiscover(sid);
	if (rc != SA_OK) {
		dbg("Failed to run discover");
                return -1;
	}

        /* add an announcement */
        announ.EntryId = 0;         // modified by oh_announcement_append
        announ.Timestamp = 0;       // modified by oh_announcement_append
        announ.AddedByUser = FALSE; // modified by oh_announcement_append
        announ.Severity = SAHPI_CRITICAL;
        announ.Acknowledged = FALSE;
        announ.StatusCond.Type= SAHPI_STATUS_COND_TYPE_SENSOR;
        announ.StatusCond.Entity.Entry[0].EntityType = SAHPI_ENT_SYSTEM_BOARD;
        announ.StatusCond.Entity.Entry[0].EntityLocation = 1;
        announ.StatusCond.Entity.Entry[1].EntityType = SAHPI_ENT_ROOT;
        announ.StatusCond.Entity.Entry[1].EntityLocation = 0;
        announ.StatusCond.DomainId = 1;
        announ.StatusCond.ResourceId = 1;
        announ.StatusCond.SensorNum = 1;
        announ.StatusCond.EventState = SAHPI_ES_UNSPECIFIED;
        announ.StatusCond.Name.Length = 5;
        memcpy(&announ.StatusCond.Name.Value,"announ", 5);
        announ.StatusCond.Mid = 123;
        /* we will not worry about the Data field for this test */
        rc = saHpiAnnunciatorAdd(sid, 1, 1, &announ);
        if (rc != SA_OK) {
		dbg("Couldn't add announcement");
		dbg("Error %s",oh_lookup_error(rc));
                return -1;
	}


        rc = saHpiAnnunciatorDelete(sid, 1, 1, SAHPI_ENTRY_UNSPECIFIED,
                                    SAHPI_CRITICAL);
        if (rc != SA_OK) {
		dbg("Couldn't delete announcement");
		dbg("Error %s",oh_lookup_error(rc));
                return -1;
	}

	return 0;
}
コード例 #4
0
ファイル: 9.c プロジェクト: basheerk/autotest-client-tests
int run_test(SaHpiSessionIdT sessionId,
	     SaHpiResourceIdT resourceId, SaHpiAnnunciatorNumT a_num)
{
	SaErrorT status;
	int retval;

	status = saHpiAnnunciatorDelete(sessionId, resourceId, a_num,
					SAHPI_ENTRY_UNSPECIFIED,
					SAHPI_INFORMATIONAL);

	if (status == SA_ERR_HPI_READ_ONLY) {
		retval = SAF_TEST_PASS;
	} else {
		retval = SAF_TEST_FAIL;
		e_print(saHpiAnnunciatorDelete, SA_ERR_HPI_READ_ONLY, status);
	}

	return retval;
}
コード例 #5
0
ファイル: ctrl_inv.c プロジェクト: openhpi1/testrepo
static ret_code_t delete_announ(SaHpiResourceIdT rptid, SaHpiInstrumentIdT rdrnum)
{
	SaErrorT		rv;
	char			str[32];
	int			i, any = 0;
	SaHpiSeverityT		sev = SAHPI_OK;
	SaHpiEntryIdT		entryId = 0;

	i = get_string_param("EntryId(<Id> | any): ", str, 32);
	if (i != 0) return(HPI_SHELL_PARM_ERROR);
	if (strcmp(str, "any") == 0) any = 1;
	else entryId = atoi(str);
	if (any) {
		i = get_string_param("Severity(crit|maj|min|info|ok|all): ",
			str, 10);
		if (i != 0) return(-1);
		if (strcmp(str, "crit") == 0) sev = SAHPI_CRITICAL;
		else if (strcmp(str, "maj") == 0) sev = SAHPI_MAJOR;
		else if (strcmp(str, "min") == 0) sev = SAHPI_MINOR;
		else if (strcmp(str, "info") == 0) sev = SAHPI_INFORMATIONAL;
		else if (strcmp(str, "ok") == 0) sev = SAHPI_OK;
		else if (strcmp(str, "all") == 0) sev = SAHPI_ALL_SEVERITIES;
		else {
			printf("Invalid severity %s\n", str);
			return(HPI_SHELL_PARM_ERROR);
		};
		entryId = SAHPI_ENTRY_UNSPECIFIED;
	};

	rv = saHpiAnnunciatorDelete(Domain->sessionId, rptid, rdrnum,
		entryId, sev);
	if (rv != SA_OK) {
		printf("saHpiAnnunciatorDelete error %s\n", oh_lookup_error(rv));
		return(HPI_SHELL_CMD_ERROR);
	};
	return HPI_SHELL_OK;
}
コード例 #6
0
ファイル: sim_sanity_022.c プロジェクト: openhpi1/openhpitest
int main(int argc, char **argv)
{
	SaHpiSessionIdT sid = 0;
        SaHpiAnnouncementT announ;
	SaErrorT rc = SA_OK;

        rc = saHpiSessionOpen(SAHPI_UNSPECIFIED_DOMAIN_ID, &sid, NULL);
	if (rc != SA_OK) {
		err("Failed to open session");
                return -1;
	}

	rc = saHpiDiscover(sid);
	if (rc != SA_OK) {
		err("Failed to run discover");
                return -1;
	}

        /* get the resource id of the chassis */
        SaHpiResourceIdT resid = get_resid(sid, SAHPI_ENT_SYSTEM_CHASSIS);
        if (resid == 0) {
		err("Couldn't find the resource id of the chassis");
                return -1;
	}

        /* add an announcement */
        announ.EntryId = 0;         // modified by oh_announcement_append
        announ.Timestamp = 0;       // modified by oh_announcement_append
        announ.AddedByUser = FALSE; // modified by oh_announcement_append
        announ.Severity = SAHPI_CRITICAL;
        announ.Acknowledged = FALSE;
        announ.StatusCond.Type= SAHPI_STATUS_COND_TYPE_SENSOR;
        announ.StatusCond.Entity.Entry[0].EntityType = SAHPI_ENT_SYSTEM_BOARD;
        announ.StatusCond.Entity.Entry[0].EntityLocation = 1;
        announ.StatusCond.Entity.Entry[1].EntityType = SAHPI_ENT_ROOT;
        announ.StatusCond.Entity.Entry[1].EntityLocation = 0;
        announ.StatusCond.DomainId = 1;
        announ.StatusCond.ResourceId = 1;
        announ.StatusCond.SensorNum = 1;
        announ.StatusCond.EventState = SAHPI_ES_UNSPECIFIED;
        announ.StatusCond.Name.Length = 6;
        memcpy(&announ.StatusCond.Name.Value,"announ", 6);
        announ.StatusCond.Mid = 123;
        announ.StatusCond.Data.DataType = SAHPI_TL_TYPE_TEXT;
        announ.StatusCond.Data.Language = SAHPI_LANG_ENGLISH;
        announ.StatusCond.Data.DataLength = 6;
        memcpy(&announ.StatusCond.Data.Data,"announ", 6);
        rc = saHpiAnnunciatorAdd(sid, resid, 1, &announ);
        if (rc != SA_OK) {
		err("Couldn't add announcement");
		err("Error %s",oh_lookup_error(rc));
                return -1;
	}


        rc = saHpiAnnunciatorDelete(sid, resid, 1, SAHPI_ENTRY_UNSPECIFIED,
                                    SAHPI_CRITICAL);
        if (rc != SA_OK) {
		err("Couldn't delete announcement");
		err("Error %s",oh_lookup_error(rc));
                return -1;
	}

	return 0;
}