× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Dan,

First, you don't really need any of the "official" hash algorithms.
That keeps things simple.  Read the source record in as an array of 32
bit integers.  Crossfoot the array. Add to the total for the member.
Repeat for each record.  Final value is your hash.

Also, keep track of how many times your total overflows.  Eg: If new
total is less than old total, you over flowed.  Keep the count.  When
doing the other side, the "total" and the overflow should match.

This is not an elegant solution by any means, but it would be very easy
to do and would work.  Probably easiest to do out of RPG actually.
Just zero the array before reading records.  That way you don't even
care what the record length is.

Bob

-----Original Message-----
From: mi400-admin@midrange.com [mailto:mi400-admin@midrange.com]On
Behalf Of Dan Bale
Sent: Thursday, May 09, 2002 9:45 AM
To: MI400@midrange.com
Subject: [MI400] Generate hash code for a source member?

(Cross posted on Midrange-L, RPG400-L, & MI400)

Has anyone invented this wheel?  I'm looking for a way to compare
source
members on different systems to determine whether or not they are
identical - Yes or No.  If different, I don't care how different.

Because I don't really want to save & restore whole source files
between two
systems, my thinking was to create a hash code for each source member
based
on the contents.  Create a file with fields:  Library Name, File Name,
Source Member Name, Hash Code.  FTP the file from the system A to
system B
and compare the two.  I'm fairly confident that the two source files
are
identical, but I need to be sure.

Is a hash code generator what I'm looking for here?  Feed in
Library/File(Member) and get back a 16(?)-byte hash code?  If so, does
anyone have one that runs on V3R2?

- Dan Bale
(I am *NOT* "Dale"
http://archive.midrange.com/midrange-l/200105/msg00281.html )
SAMSA, Inc.
989-790-0507
DBale@SAMSA.com
  Quiquid latine dictum sit altum viditur.
  (Whatever is said in Latin seems profound.)


_______________________________________________
This is the MI Programming on the AS400 / iSeries (MI400) mailing list
To post a message email: MI400@midrange.com
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/cgi-bin/listinfo/mi400
or email: MI400-request@midrange.com
Before posting, please take a moment to review the archives
at http://archive.midrange.com/mi400.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.