func (r *objReader) init(f *os.File) {
r.a = &Archive{f, nil}
- r.offset, _ = f.Seek(0, os.SEEK_CUR)
- r.limit, _ = f.Seek(0, os.SEEK_END)
- f.Seek(r.offset, os.SEEK_SET)
+ r.offset, _ = f.Seek(0, io.SeekCurrent)
+ r.limit, _ = f.Seek(0, io.SeekEnd)
+ f.Seek(r.offset, io.SeekStart)
r.b = bio.NewReader(f)
}
r.readFull(r.tmp[:n])
} else {
// Seek, giving up buffered data.
- r.b.MustSeek(r.offset+n, os.SEEK_SET)
+ r.b.MustSeek(r.offset+n, io.SeekStart)
r.offset += n
}
}
// AddEntry adds an entry to the end of a, with the content from r.
func (a *Archive) AddEntry(typ EntryType, name string, mtime int64, uid, gid int, mode os.FileMode, size int64, r io.Reader) {
- off, err := a.f.Seek(0, os.SEEK_END)
+ off, err := a.f.Seek(0, io.SeekEnd)
if err != nil {
log.Fatal(err)
}
}
var fhdr bigarFileHeader
- if _, err := sr.Seek(0, os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(0, io.SeekStart); err != nil {
return nil, err
}
if err := binary.Read(sr, binary.BigEndian, &fhdr); err != nil {
// The member header is normally 2 bytes larger. But it's easier
// to read the name if the header is read without _ar_nam.
// However, AIAFMAG must be read afterward.
- if _, err := sr.Seek(off, os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(off, io.SeekStart); err != nil {
return nil, err
}
fileoff := off + AR_HSZ_BIG + namlen
if fileoff&1 != 0 {
fileoff++
- if _, err := sr.Seek(1, os.SEEK_CUR); err != nil {
+ if _, err := sr.Seek(1, io.SeekCurrent); err != nil {
return nil, err
}
}
f.TargetMachine = magic
// Read XCOFF file header
- if _, err := sr.Seek(0, os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(0, io.SeekStart); err != nil {
return nil, err
}
var nscns uint16
// Read string table (located right after symbol table).
offset := symptr + uint64(nsyms)*SYMESZ
- if _, err := sr.Seek(int64(offset), os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(int64(offset), io.SeekStart); err != nil {
return nil, err
}
// The first 4 bytes contain the length (in bytes).
return nil, err
}
if l > 4 {
- if _, err := sr.Seek(int64(offset), os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(int64(offset), io.SeekStart); err != nil {
return nil, err
}
f.StringTable = make([]byte, l)
}
// Read section headers
- if _, err := sr.Seek(int64(hdrsz)+int64(opthdr), os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(int64(hdrsz)+int64(opthdr), io.SeekStart); err != nil {
return nil, err
}
f.Sections = make([]*Section, nscns)
var idxToSym = make(map[int]*Symbol)
// Read symbol table
- if _, err := sr.Seek(int64(symptr), os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(int64(symptr), io.SeekStart); err != nil {
return nil, err
}
f.Symbols = make([]*Symbol, 0)
// Read csect auxiliary entry (by convention, it is the last).
if !needAuxFcn {
- if _, err := sr.Seek(int64(numaux-1)*SYMESZ, os.SEEK_CUR); err != nil {
+ if _, err := sr.Seek(int64(numaux-1)*SYMESZ, io.SeekCurrent); err != nil {
return nil, err
}
}
f.Symbols = append(f.Symbols, sym)
skip:
i += numaux // Skip auxiliary entries
- if _, err := sr.Seek(int64(numaux)*SYMESZ, os.SEEK_CUR); err != nil {
+ if _, err := sr.Seek(int64(numaux)*SYMESZ, io.SeekCurrent); err != nil {
return nil, err
}
}
if sect.Relptr == 0 {
continue
}
- if _, err := sr.Seek(int64(sect.Relptr), os.SEEK_SET); err != nil {
+ if _, err := sr.Seek(int64(sect.Relptr), io.SeekStart); err != nil {
return nil, err
}
for i := uint32(0); i < sect.Nreloc; i++ {
// Library name pattern is either path/base/member or base/member
func (f *File) readImportIDs(s *Section) ([]string, error) {
// Read loader header
- if _, err := s.sr.Seek(0, os.SEEK_SET); err != nil {
+ if _, err := s.sr.Seek(0, io.SeekStart); err != nil {
return nil, err
}
var istlen uint32
}
// Read loader import file ID table
- if _, err := s.sr.Seek(int64(impoff), os.SEEK_SET); err != nil {
+ if _, err := s.sr.Seek(int64(impoff), io.SeekStart); err != nil {
return nil, err
}
table := make([]byte, istlen)
return nil, nil
}
// Read loader header
- if _, err := s.sr.Seek(0, os.SEEK_SET); err != nil {
+ if _, err := s.sr.Seek(0, io.SeekStart); err != nil {
return nil, err
}
var stlen uint32
}
// Read loader section string table
- if _, err := s.sr.Seek(int64(stoff), os.SEEK_SET); err != nil {
+ if _, err := s.sr.Seek(int64(stoff), io.SeekStart); err != nil {
return nil, err
}
st := make([]byte, stlen)
}
// Read loader symbol table
- if _, err := s.sr.Seek(int64(symoff), os.SEEK_SET); err != nil {
+ if _, err := s.sr.Seek(int64(symoff), io.SeekStart); err != nil {
return nil, err
}
all := make([]ImportedSymbol, 0)