1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
 herr_t
 ss_pers_cksum(ss_persobj_t *persobj,            /* Persistent object whose checksum will be computed. */
               ss_val_cksum_t *cksum             /* OUT: The computed checksum. */
               )
 {
     SS_ENTER(ss_pers_cksum, herr_t);
     ss_pers_class_t             *pc=NULL;

     SS_ASSERT_CLASS(persobj, ss_persobj_t);
     if (NULL==(pc=SS_PERS_CLASS(SS_MAGIC_SEQUENCE(SS_MAGIC_OF(persobj))))) SS_ERROR(NOTFOUND);
     if (ss_val_cksum(persobj, pc->valinfo_nused, pc->valinfo, NULL, cksum)<0) SS_ERROR(FAILED);
 SS_CLEANUP:
     SS_LEAVE(0);
 }