view netinstall/nio-file.cc @ 5258:1ed4cefddd12

Add a couple of extra docstring backslashes, #'format-time-string 2010-09-05 Aidan Kehoe <kehoea@parhasard.net> * editfns.c (Fformat_time_string): Use two backslashes so that there is at least one present in the output of describe function, when describing the Roman month number syntax in this function's docstring. Thanks for provoking me to look at this, Stephen Turnbull.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 05 Sep 2010 19:22:37 +0100
parents 3078fd1074e8
children
line wrap: on
line source

/*
 * Copyright (c) 2000, Red Hat, Inc.
 *
 *     This program is free software; you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation; either version 2 of the License, or
 *     (at your option) any later version.
 *
 *     A copy of the GNU General Public License can be found at
 *     http://www.gnu.org/
 *
 * Written by DJ Delorie <dj@cygnus.com>
 *
 */

/* The purpose of this file is to manage access to files stored on the
   local disk (i.e. "downloading" setup.ini).  Called from netio.cc */

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include "win32.h"
#include "netio.h"
#include "nio-file.h"
#include "resource.h"
#include "msg.h"

NetIO_File::NetIO_File (char *Purl)
  : NetIO (Purl)
{
  struct stat s;
  fd = fopen (path, "rb");
  if (fd)
    {
      stat (path, &s);
      file_size = s.st_size;
    }
  else
    {
      char *err = strerror (errno);
      if (!err)
	err = "(unknown error)";
      note (IDS_ERR_OPEN_READ, path, err);
    }
}

NetIO_File::~NetIO_File ()
{
  if (fd)
    fclose ((FILE *)fd);
}

int
NetIO_File::ok ()
{
  return fd ? 1 : 0;
}

int
NetIO_File::read (char *buf, int nbytes)
{
  return fread (buf, 1, nbytes, (FILE *)fd);
}