int XAttOneGtk::set_value() { char *text; int sts; char buff[1024]; if ( input_open) { if ( input_multiline) { GtkTextIter start_iter, end_iter; gtk_text_buffer_get_start_iter( cmd_scrolled_buffer, &start_iter); gtk_text_buffer_get_end_iter( cmd_scrolled_buffer, &end_iter); text = gtk_text_buffer_get_text( cmd_scrolled_buffer, &start_iter, &end_iter, FALSE); } else { text = gtk_editable_get_chars( GTK_EDITABLE(cmd_input), 0, -1); } sts = XNav::attr_string_to_value( atype, text, buff, sizeof(buff), asize); g_free( text); if ( EVEN(sts)) { message( 'E', "Input syntax error"); return sts; } sts = gdh_SetObjectInfoAttrref( &aref, buff, asize); if ( EVEN(sts)) { message( 'E', "Unable to set value"); return sts; } message( ' ', ""); } return XATT__SUCCESS; }
int XAttOneMotif::set_value() { char *text; int sts; char buff[1024]; if ( input_open) { if ( input_multiline) text = XmTextGetString( cmd_scrolledinput); else text = XmTextGetString( cmd_input); sts = XNav::attr_string_to_value( atype, text, buff, sizeof(buff), asize); if ( EVEN(sts)) { message( 'E', "Input syntax error"); return sts; } sts = gdh_SetObjectInfoAttrref( &aref, buff, asize); if ( EVEN(sts)) { message( 'E', "Unable to set value"); return sts; } message( ' ', ""); } return XATT__SUCCESS; }
pwr_tStatus bck_LoadBackup() { pwr_tStatus sts; pwr_tInt32 csts; pwr_tObjid objid; pwr_sClass_Backup_Conf* backup_confp = NULL; /* Backup_Conf object pointer */ FILE* f; BCK_FILEHEAD_STRUCT fh; /* File header */ BCK_CYCLEHEAD_STRUCT ch_old; bck_t_cycleheader ch; BCK_DATAHEAD_STRUCT dh_old; bck_t_writeheader dh; pwr_tUInt32 c; pwr_tUInt32 d; char* strp; char* datap = NULL; char* namep = NULL; char fname[200]; pwr_tAName objectname; /* Find the local Backup_Conf object. */ sts = gdh_GetClassList(pwr_cClass_Backup_Conf, &objid); while (ODD(sts)) { sts = gdh_ObjidToPointer(objid, (pwr_tAddress*)&backup_confp); if (ODD(sts)) break; sts = gdh_GetNextObject(objid, &objid); } if (EVEN(sts)) return sts; /* Open the backup file. */ dcli_translate_filename(fname, backup_confp->BackupFile); f = fopen(fname, "r+" A_MODE); if (f == NULL) { SET_ERRNO_STS; errh_Error("Load Backup: Failed to open %s, errno = %d", backup_confp->BackupFile, sts); return sts; } errh_Info("BACKUP loading information from %s", FGETNAME); sts = 1; /* Guess all ok */ /* Read the header. */ csts = fread(&fh, sizeof fh, 1, f); if (csts == 0) { SET_ERRNO_STS; } else { if (fh.version < BCK_FILE_VERSION - 1) { errh_Info("BACKUP Loading old file version : %d", fh.version); /* Read the cycle data. */ BCK_FILEHEAD_STRUCT_V6* fhp_v6 = (BCK_FILEHEAD_STRUCT_V6*)&fh; for (c = 0; c < 2; c++) { fseek(f, fhp_v6->curdata[c], 0); fread(&ch_old, sizeof ch_old, 1, f); /* Work thru the data segments */ for (d = 0; d < ch_old.segments; d++) { csts = fread(&dh_old, sizeof dh_old, 1, f); if (csts != 0) { datap = malloc(dh_old.attrref.Size); csts = fread(datap, dh_old.attrref.Size, 1, f); } if (csts == 0) { SET_ERRNO_STS; break; } if (dh_old.valid) { /* Find object */ if (dh_old.dynamic) { strp = strchr(dh_old.dataname, '.'); /* always is a full object! */ if (strp != NULL) *strp = '\0'; /* Just make sure... */ sts = gdh_CreateObject(dh_old.dataname, dh_old.cid, dh_old.attrref.Size, &objid, dh_old.attrref.Objid, 0, pwr_cNObjid); if (strp != NULL) *strp = '.'; if (ODD(sts)) sts = gdh_SetObjectInfo( dh_old.dataname, datap, dh_old.attrref.Size); } /* Dynamic object */ else { sts = gdh_SetObjectInfoAttrref( &dh_old.attrref, datap, dh_old.attrref.Size); } } /* valid segment */ free(datap); if (EVEN(sts)) { errh_Error( "BACKUP error reloading %s, reason:\n%m", dh_old.dataname, sts); sts = 1; } } /* For all data segments */ if (EVEN(sts)) break; /* Fatal! Get out! */ } /* For each cycle */ } else if (fh.version == BCK_FILE_VERSION - 1) { /* Read the cycle data. */ BCK_FILEHEAD_STRUCT_V6* fhp_v6 = (BCK_FILEHEAD_STRUCT_V6*)&fh; BCK_CYCLEHEAD_STRUCT_V6 ch_v6; for (c = 0; c < 2; c++) { fseek(f, fhp_v6->curdata[c], 0); fread(&ch_v6, sizeof ch_v6, 1, f); /* Work thru the data segments */ for (d = 0; d < ch_v6.segments; d++) { csts = fread(&dh, sizeof dh, 1, f); if (csts != 0) { if (dh.namesize > 0) { namep = malloc(dh.namesize + 1); csts = fread(namep, dh.namesize + 1, 1, f); } else namep = NULL; datap = malloc(dh.size); csts = fread(datap, dh.size, 1, f); } if (csts == 0) { SET_ERRNO_STS; break; } if (dh.valid) { /* Find object */ if (dh.dynamic) { strp = strchr(namep, '.'); /* always is a full object! */ if (strp != NULL) *strp = '\0'; /* Just make sure... */ sts = gdh_CreateObject( namep, dh.cid, dh.size, &objid, dh.objid, 0, pwr_cNObjid); if (strp != NULL) *strp = '.'; if (ODD(sts)) sts = gdh_SetObjectInfo(namep, datap, dh.size); strncpy(objectname, namep, pwr_cSizAName); } /* Dynamic object */ else { sts = gdh_ObjidToName( dh.objid, objectname, sizeof(objectname), cdh_mNName); if (ODD(sts)) { strcat(objectname, namep); sts = gdh_SetObjectInfo(objectname, datap, dh.size); } } } /* valid segment */ if (EVEN(sts)) { errh_Error( "BACKUP error reloading %s, reason:\n%m", objectname, sts); sts = 1; } free(datap); free(namep); } /* For all data segments */ if (EVEN(sts)) break; /* Fatal! Get out! */ } /* For each cycle */ } else if (fh.version == BCK_FILE_VERSION) { /* Read the cycle data. */ for (c = 0; c < 2; c++) { fseek(f, fh.curdata[c], 0); fread(&ch, sizeof ch, 1, f); /* Work thru the data segments */ for (d = 0; d < ch.segments; d++) { csts = fread(&dh, sizeof dh, 1, f); if (csts != 0) { if (dh.namesize > 0) { namep = malloc(dh.namesize + 1); csts = fread(namep, dh.namesize + 1, 1, f); } else namep = NULL; datap = malloc(dh.size); csts = fread(datap, dh.size, 1, f); } if (csts == 0) { SET_ERRNO_STS; break; } if (dh.valid) { /* Find object */ strcpy(objectname, ""); if (dh.dynamic) { strp = strchr(namep, '.'); /* always is a full object! */ if (strp != NULL) *strp = '\0'; /* Just make sure... */ sts = gdh_CreateObject( namep, dh.cid, dh.size, &objid, dh.objid, 0, pwr_cNObjid); if (strp != NULL) *strp = '.'; if (ODD(sts)) sts = gdh_SetObjectInfo(namep, datap, dh.size); strncpy(objectname, namep, pwr_cSizAName); } /* Dynamic object */ else { sts = gdh_ObjidToName( dh.objid, objectname, sizeof(objectname), cdh_mNName); if (ODD(sts)) { strcat(objectname, namep); sts = gdh_SetObjectInfo(objectname, datap, dh.size); } else cdh_OidToString(objectname, sizeof(objectname), dh.objid, 1); } } /* valid segment */ if (EVEN(sts)) { errh_Error( "BACKUP error reloading %s, reason:\n%m", objectname, sts); sts = 1; } free(datap); free(namep); } /* For all data segments */ if (EVEN(sts)) break; /* Fatal! Get out! */ } /* For each cycle */ } /* File version format ok */ else { errh_Error("BACKUP Cannot load backup file with version %d", fh.version); } } /* Successful header read */ fclose(f); return sts; }