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 p

⟦b7994fdfa⟧ TextFile

    Length: 1916 (0x77c)
    Types: TextFile
    Names: »put_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⟧ »put_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/put_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/put_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/put_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/put_r.c« 

TextFile

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

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

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

int	put_r_read(fd)	int	fd; 
{
	int	i,error;
	char	*str;
	int	lg_str;
	int	iter_i;
	if (error=setjmp(env))	return	error;
#ifdef	DEBUG
	trace_request("Put");
#endif
	check(rw_read_int(fd,&i));
	check((i==F_APPEND)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_bool(fd,&i));
#ifdef	DEBUG
	trace_bool("in","Append",i);
#endif
	check(put_f_append_in(i));
	check(rw_read_int(fd,&i));
	check((i==F_TO_REMOTE_FILE)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_str(fd,&str));
#ifdef	DEBUG
	trace_string("in","Remote_File",str);
#endif
	check(put_f_to_remote_file_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(put_f_options_in(str));
	check(rw_read_int(fd,&i));
	iter_i=1;
	while	(i==F_CONTENT) {
		check(rw_read_bnd_str(fd,&str,&lg_str));
#ifdef	DEBUG
		if (iter_i<5) trace_bnd_string("in","Content",str,lg_str);
		if (iter_i==5) trace_bnd_string("in","Content","....",4);
#endif
		check(put_f_content_in(iter_i,str,lg_str));
		check(rw_read_int(fd,&i));
		iter_i++;
	}
	check((i==F_DELIMITOR)?E_OK:E_INTERNAL_ERROR);
	check(rw_read_int(fd,&i));
	check((i==R_PUT)?E_OK:E_INTERNAL_ERROR);
	return	E_OK;
}
int	put_r_write(fd)	int	fd; 
{
	int	error;
	b_flush(0);
	if (error=setjmp(env)) {
		return report_unix_error(fd,R_PUT,error);
	}
	if (!b_is_empty())	longjmp(env,E_INTERNAL_ERROR);
	check(put_f_end());
#ifdef	DEBUG
	trace_end();
#endif
	rw_write_int(fd,F_DELIMITOR);
	b_flush(1);
	rw_write_int(fd,R_PUT);
	return	E_OK;
}