legacy.c File Reference
`#include "system.h"`
`#include "rpmio_internal.h"`
`#include <rpmmacro.h>`
`#include "misc.h"`
`#include "legacy.h"`
`#include "debug.h"`
Include dependency graph for legacy.c:

Go to the source code of this file.

## Macros

#define | alloca_strdup(_s) strcpy(alloca(strlen(_s)+1), (_s))

## Functions

static int | open_dso (const char *path, pid_t *pidp, size_t *fsizep)
| Open a file descriptor to verify file MD5 and size. More...
int | dodigest (int digestalgo, const char *fn, unsigned char *digest, int asAscii, size_t *fsizep)
| Return digest and size of a file. More...

## Macro Definition Documentation

#define alloca_strdup | ( |  | _s | ) | strcpy(alloca(strlen(_s)+1), (_s))

Definition at line 39 of file legacy.c.

## Function Documentation

int dodigest | ( | int | digestalgo,
|  | const char * | fn,
|  | unsigned char * | digest,
|  | int | asAscii,
|  | size_t * | fsizep
| ) |  |

Return digest and size of a file.

Parameters

  digestalgo | digest algorithm to use
  fn | file name

Return values

  digest | address of md5sum

Parameters

  asAscii | return md5sum as ascii string?

Return values

  *fsizep | file size pointer (or NULL)

Returns
  0 on success, 1 on error

Definition at line 156 of file legacy.c.

References _free(), Fclose(), fdDup(), fdFiniDigest(), fdInitDigest(), Ferror(), Fopen(), Fread(), open_dso(), RPMDIGEST_NONE, rpmDigestFinal(), rpmDigestInit(), rpmDigestUpdate(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by genCpioListAndHeader(), handleOverlappedFiles(), rpmAddSignature(), rpmfiDecideFate(), and rpmVerifyFile().

static int open_dso | ( | const char * | path,
|  | pid_t * | pidp,
|  | size_t * | fsizep
| ) |  |

static

Open a file descriptor to verify file MD5 and size.

Parameters

  path | file path

Return values

  pidp | prelink helper pid or 0
  fsizep | file size

Returns
  -1 on error, otherwise, an open file descriptor

Definition at line 49 of file legacy.c.

References rpmExpand(), and unsetenv().

Referenced by dodigest().