DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T e

⟦aec28748d⟧ TextFile

    Length: 1438 (0x59e)
    Types: TextFile
    Names: »expunge_r.c«

Derivation

└─⟦8ee07855d⟧ Bits:30000545 8mm tape, Rational 1000, DTIA 2_1_6
    └─ ⟦0c25cb74a⟧ »DATA« 
        └─⟦038380b96⟧ 
└─⟦d0624311f⟧ Bits:30000529 8mm tape, Rational 1000, DTIA 2_1_7
    └─ ⟦f494b5154⟧ »DATA« 
        └─⟦038380b96⟧ 
            └─ ⟦this⟧ »expunge_r.c« 
└─⟦8ee07855d⟧ Bits:30000545 8mm tape, Rational 1000, DTIA 2_1_6
    └─ ⟦0c25cb74a⟧ »DATA« 
        └─⟦0732ea0cf⟧ 
└─⟦d0624311f⟧ Bits:30000529 8mm tape, Rational 1000, DTIA 2_1_7
    └─ ⟦f494b5154⟧ »DATA« 
        └─⟦0732ea0cf⟧ 
            └─ ⟦this⟧ »../../dtia/release_apollo_2.1/expunge_r.c« 
└─⟦8ee07855d⟧ Bits:30000545 8mm tape, Rational 1000, DTIA 2_1_6
    └─ ⟦0c25cb74a⟧ »DATA« 
        └─⟦25fab149a⟧ 
└─⟦d0624311f⟧ Bits:30000529 8mm tape, Rational 1000, DTIA 2_1_7
    └─ ⟦f494b5154⟧ »DATA« 
        └─⟦25fab149a⟧ 
            └─ ⟦this⟧ »../../dtia/release_sun_2.1/expunge_r.c« 
└─⟦8ee07855d⟧ Bits:30000545 8mm tape, Rational 1000, DTIA 2_1_6
    └─ ⟦0c25cb74a⟧ »DATA« 
        └─⟦be254d495⟧ 
└─⟦d0624311f⟧ Bits:30000529 8mm tape, Rational 1000, DTIA 2_1_7
    └─ ⟦f494b5154⟧ »DATA« 
        └─⟦be254d495⟧ 
            └─ ⟦this⟧ »../../dtia/release_aix_2.1/expunge_r.c« 
└─⟦8ee07855d⟧ Bits:30000545 8mm tape, Rational 1000, DTIA 2_1_6
    └─ ⟦0c25cb74a⟧ »DATA« 
        └─⟦c67979795⟧ 
└─⟦d0624311f⟧ Bits:30000529 8mm tape, Rational 1000, DTIA 2_1_7
    └─ ⟦f494b5154⟧ »DATA« 
        └─⟦c67979795⟧ 
            └─ ⟦this⟧ »../../dtia/release_hp_2.1/expunge_r.c« 

TextFile

#ifndef	lint
#ifndef	DEBUG
static char SCCS_id[] = "@(#)expunge_r.c 2.1 90/08/02 19:05:28  Copyright(c) 1990 by Rational.";
#else
static char SCCS_id[] = "@(#)expunge_r.c DEBUG 2.1 90/08/02 19:05:28  Copyright(c) 1990 by Rational.";
#endif
#endif

#define		EXPUNGE_R
#include	"talk.h"
#undef		EXPUNGE_R

static	jmp_buf	env;
static	check(error)	int error; 
{
	if (error != E_OK) longjmp(env,error);
}

int	expunge_r_read(fd)	int	fd; 
{
	int	i,error;
	char	*str;
	if (error=setjmp(env))	return	error;
#ifdef	DEBUG
	trace_request("Expunge");
#endif
	check(rw_read_int(fd,&i));
	check((i==F_OBJECT)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_str(fd,&str));
#ifdef	DEBUG
	trace_string("in","Object",str);
#endif
	check(expunge_f_object_in(str));
	check(rw_read_int(fd,&i));
	check((i==F_OPTIONS)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_str(fd,&str));
#ifdef	DEBUG
	trace_string("in","Options",str);
#endif
	check(expunge_f_options_in(i));
	check(rw_read_int(fd,&i));
	check((i==F_DELIMITOR)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_int(fd,&i));
	check((i==R_EXPUNGE)?E_OK:E_INTERNAL_ERROR);
	return	E_OK;
}
int	expunge_r_write(fd)	int	fd; 
{
	int	error;
	b_flush(0);
	if (error=setjmp(env)) {
		return report_unix_error(fd,R_EXPUNGE,error);
	}
	if (!b_is_empty())	longjmp(env,E_INTERNAL_ERROR);
	check(expunge_f_end());
#ifdef	DEBUG
	trace_end();
#endif
	rw_write_int(fd,F_DELIMITOR);
	(void)b_flush(1);
	rw_write_int(fd,R_EXPUNGE);
	return	E_OK;
}