Source
...
Target
Commits (5)
  • Robert Sprowson's avatar
    Import of Tftp · dcc5f29f
    Robert Sprowson authored
    From https://svnweb.freebsd.org/base/stable/4/usr.bin/tftp/ revision 57955.
    dcc5f29f
  • Robert Sprowson's avatar
    Add Tftp to the disc based !Internet commands · 427b8998
    Robert Sprowson authored
    A TFTP client is described in the TCP/IP Protocol Suite manual but seems to have been lost somewhere along the way, perhaps when the Internet 5 work was done? TFTP is often used to load OS images or similar boot time stuff as it's a very simple (and insecure) protocol.
    Port a contemporary client from FreeBSD (circa March 2000) with a few changes to allow it to run on RISC OS.
    Makefile:
      Remove the BareMinUtils option. Nothing uses it, and it wouldn't work anyway since it's missing !Run.
      Add Tftp
    
    Tested against OpenTFTP server 1.64 running on Windows, GETting and PUTing a number of files.
    
    Version 5.58. Tagged as 'Internet-5_58'
    427b8998
  • Robert Sprowson's avatar
    Spelling correction netmark->netmask · 2be0b286
    Robert Sprowson authored
    Version 5.59. Tagged as 'Internet-5_59'
    2be0b286
  • ROOL's avatar
    Internet resource updates and additions · def645fa
    ROOL authored
    Detail:
      Add some trusted root certificates to InetDBase: for use by AcornSSL.
      Remove 'pong', such that it doesn't have to be maintained (the Internet module responds to ICMP requests).
      Change the examples in AUNMap for a 10.x.x.x based network.
      Add ssh/https/nfsd to our table of known services (for AcornSSL and NFS).
    Admin:
      Submission for TCP/IP bounty.
    
    Version 5.60. Tagged as 'Internet-5_60'
    def645fa
  • Robert Sprowson's avatar
    Fixes from static analysis · 698cbb29
    Robert Sprowson authored
    Ref https://www.riscosopen.org/forum/forums/4/topics/9503#posts-72595 and subsequent offline checks.
    
    arp: missing return from non-void delete() (from FreeBSD 13977)
    ifconfig: undefined variable m (from FreeBSD revision 13145)
              correct return types to void for xxx_getaddr() (from FreeBSD revision 19914)
    inetstat: dead array variable buf2[] removed
    ipvars: missing return value from main()
    map-mbone: missing va_end (from NetBSD revision 1.8)
    md5: file handle leak on error (from FreeBSD revision 292955)
    mrinfo: missing va_end (from NetBSD revision 1.12)
    mtrace: missing va_end (from NetBSD revision 1.18)
    newfiler: add comment for apparent missing return
    sysctl: fix QUAD variable type (from FreeBSD revision 88696)
            though academic since Internet doesn't have any quad_t variables explicit function return types added in PathConf.c
    BootNet: change RMIfThere alias to use temporary variable from its own namespace
    
    Version 5.61. Tagged as 'Internet-5_61'
    698cbb29
......@@ -59,9 +59,20 @@ COMMONFILES=\
${SDIR}.sysctl.SysCtl\
${SDIR}.traceroute.TraceRoute
STBFILES=${SDIR}.pong.Pong
STBFILES=\
${RDIR}.!Boot\
DISCFILES= ${RDIR}.!Boot\
DBFILES=\
${RDIR}.files.AUNMap\
${RDIR}.files.CertData\
${RDIR}.files.Hosts\
${RDIR}.files.MimeMap\
${RDIR}.files.Networks\
${RDIR}.files.Protocols\
${RDIR}.files.Services\
DISCFILES=\
${RDIR}.!Boot\
${LDIR}.!Help\
${LDIR}.!Run\
${RDIR}.!Sprites\
......@@ -73,14 +84,8 @@ DISCFILES= ${RDIR}.!Boot\
${SDIR}.md5.MD5\
${SDIR}.mrinfo.MRInfo\
${SDIR}.mtrace.MTrace\
${SDIR}.pong.Pong\
${SDIR}.tftp.Tftp\
${SDIR}.utils.utl.RMFind\
${RDIR}.files.AUNMap\
${RDIR}.files.Hosts\
${RDIR}.files.MimeMap\
${RDIR}.files.Networks\
${RDIR}.files.Protocols\
${RDIR}.files.Services\
${RDIR}.utils.BootNet\
${SDIR}.utils.utl.CheckMem\
${SDIR}.newfiler.NewFiler\
......@@ -90,13 +95,9 @@ DISCFILES= ${RDIR}.!Boot\
FILES=\
${COMMONFILES} \
${DISCFILES} \
${DBFILES} \
${STBFILES}
BAREMINUTILS = \
${SDIR}.ifconfig.IfConfig \
${SDIR}.ping.Ping \
${RDIR}.!Boot
EMERGENCYUTILS = \
${SDIR}.arp.ARP \
${SDIR}.ifconfig.IfConfig \
......@@ -117,11 +118,11 @@ NETUTILS = \
${SDIR}.mrinfo.MRInfo \
${SDIR}.mtrace.MTrace \
${SDIR}.ping.Ping \
${SDIR}.pong.Pong \
${SDIR}.utils.utl.RMFind \
${SDIR}.route.Route \
${SDIR}.showstat.ShowStat \
${SDIR}.sysctl.SysCtl \
${SDIR}.tftp.Tftp \
${SDIR}.traceroute.TraceRoute \
${RDIR}.!Boot \
${LDIR}.!Run \
......@@ -154,20 +155,18 @@ install_common: ${COMMONFILES}
${CP} ${SDIR}.sysctl.SysCtl ${INSTAPP}.bin.SysCtl ${CPFLAGS}
${CP} ${SDIR}.traceroute.TraceRoute ${INSTAPP}.bin.TraceRoute ${CPFLAGS}
install_STB: ${STBFILES}
${MKDIR} ${INSTAPP}.files
install_STB: ${STBFILES} ${DBFILES}
${AWK} -f awk.Version LocalUserIFRes:!Boot > ${INSTAPP}.!Boot
SetType ${INSTAPP}.!Boot Obey
${CP} LocalUserIFRes:CopyLocal ${INSTAPP}.CopyLocal ${CPFLAGS}
${CP} LocalUserIFRes:RTime ${INSTAPP}.bin.RTime ${CPFLAGS}
${CP} ${SDIR}.pong.Pong ${INSTAPP}.bin.Pong ${CPFLAGS}
${CP} ${RDIR}.files.Hosts ${INSTAPP}.files.Hosts ${CPFLAGS}
${CP} LocalUserIFRes:MimeMap ${INSTAPP}.files.MimeMap ${CPFLAGS}
${CP} ${RDIR}.files.Networks ${INSTAPP}.files.Networks ${CPFLAGS}
${CP} ${RDIR}.files.Protocols ${INSTAPP}.files.Protocols ${CPFLAGS}
${CP} ${RDIR}.files.Services ${INSTAPP}.files.Services ${CPFLAGS}
install_: ${DISCFILES} dirs
install_: ${DISCFILES} ${DBFILES}
${AWK} -f awk.Version ${RDIR}.!Boot > ${INSTAPP}.!Boot
SetType ${INSTAPP}.!Boot Obey
${AWK} -f awk.Version ${LDIR}.!Help > ${INSTAPP}.!Help
......@@ -192,7 +191,7 @@ install_: ${DISCFILES} dirs
${CP} ${SDIR}.md5.MD5 ${INSTAPP}.bin.MD5 ${CPFLAGS}
${CP} ${SDIR}.mrinfo.MRInfo ${INSTAPP}.bin.MRInfo ${CPFLAGS}
${CP} ${SDIR}.mtrace.MTrace ${INSTAPP}.bin.MTrace ${CPFLAGS}
${CP} ${SDIR}.pong.Pong ${INSTAPP}.bin.Pong ${CPFLAGS}
${CP} ${SDIR}.tftp.Tftp ${INSTAPP}.bin.Tftp ${CPFLAGS}
${CP} ${SDIR}.utils.utl.RMFind ${INSTAPP}.bin.RMFind ${CPFLAGS}
${CP} ${SDIR}.utils.utl.CheckMem ${INSTAPP}.utils.CheckMem ${CPFLAGS}
${CP} ${SDIR}.newfiler.NewFiler ${INSTAPP}.utils.NewFiler ${CPFLAGS}
......@@ -202,6 +201,7 @@ install_: ${DISCFILES} dirs
dirs:
${MKDIR} ${INSTAPP}
${MKDIR} ${INSTAPP}.bin
${MKDIR} ${INSTAPP}.files
clean:
dir ${SDIR}
......@@ -228,12 +228,12 @@ resources-NetUtils: ${NETUTILS}
${CP} ${SDIR}.mrinfo.MRInfo ${RESD}.bin.MRInfo ${CPFLAGS}
${CP} ${SDIR}.mtrace.MTrace ${RESD}.bin.MTrace ${CPFLAGS}
${CP} ${SDIR}.ping.Ping ${RESD}.bin.Ping ${CPFLAGS}
${CP} ${SDIR}.pong.Pong ${RESD}.bin.Pong ${CPFLAGS}
${CP} ${SDIR}.utils.utl.RMFind ${RESD}.bin.RMFind ${CPFLAGS}
${CP} ${SDIR}.route.Route ${RESD}.bin.Route ${CPFLAGS}
${CP} ${SDIR}.sysctl.SysCtl ${RESD}.bin.SysCtl ${CPFLAGS}
${CP} ${SDIR}.showstat.ShowStat ${RESD}.bin.ShowStat ${CPFLAGS}
${CP} ${SDIR}.traceroute.TraceRoute ${RESD}.bin.TraceRoute ${CPFLAGS}
${CP} ${SDIR}.tftp.Tftp ${RESD}.bin.Tftp ${CPFLAGS}
${AWK} -f awk.Version ${RDIR}.files.AUNMap > ${RESD}.files.AUNMap
SetType ${RESD}.files.AUNMap Obey
${CP} ${RDIR}.files.Hosts ${RESD}.files.Hosts ${CPFLAGS}
......@@ -267,18 +267,6 @@ resources-EmergencyUtils: ${EMERGENCYUTILS}
${AWK} -f awk.Version ${LDIR}.!Run > ${RESD}.!Run
SetType ${RESD}.!Run Obey
resources-BareMinUtils: ${BAREMINUTILS}
${MKDIR} ${RESD}
${MKDIR} ${RESD}.bin
${MKDIR} ${RESD}.files
${CP} ${SDIR}.ifconfig.IfConfig ${RESD}.bin.IfConfig ${CPFLAGS}
${CP} ${SDIR}.ping.Ping ${RESD}.bin.Ping ${CPFLAGS}
${CP} ${RDIR}.files.Hosts ${RESD}.files.Hosts ${CPFLAGS}
${CP} ${RDIR}.files.Protocols ${RESD}.files.Protocols ${CPFLAGS}
${CP} ${RDIR}.files.Services ${RESD}.files.Services ${CPFLAGS}
${AWK} -f awk.Version ${RDIR}.!Boot > ${RESD}.!Boot
SetType ${RESD}.!Boot Obey
${SDIR}.arp.ARP: ${SDIR}.arp.c.ARP
dir ${SDIR}.arp
@amu_machine
......@@ -381,6 +369,14 @@ ${SDIR}.sysctl.SysCtl: ${SDIR}.sysctl.c.SysCtl
@up
@up
${SDIR}.tftp.Tftp: ${SDIR}.tftp.c.main \
${SDIR}.tftp.c.tftp \
${SDIR}.tftp.c.tftpsubs
dir ${SDIR}.tftp
@amu_machine
@up
@up
${SDIR}.traceroute.TraceRoute: ${SDIR}.traceroute.c.TraceRoute
dir ${SDIR}.traceroute
@amu_machine
......
......@@ -8,21 +8,21 @@ AUNMAPVERSION
| take the form of a 4 number sequence) to the Net and Station |
| number style addresses used by Level4 type systems. |
| |
| An entry like 'AddMap 1.0.128.0 128' will tell the software |
| that the IP address 1.0.128.x maps to the AUN address 128.x |
| An entry like 'AddMap 10.0.128.0 128' will tell the software |
| that the IP address 10.0.128.x maps to the AUN address 128.x |
| |
| If you have no AUN Gateways on your system, you will need the |
| default line shown after this note. |
| |
| If you have one or more gateways, then you need a line |
| to tell the software about each network, and also |
| suitable routes must have been set up by !Internet. |
| eg: |
| If you have one or more gateways, then you need a line |
| to tell the software about each network, and also |
| suitable routes must have been set up by !Internet. |
| eg: |
| |
|AddMap 1.2.129.0 129 |
|AddMap 1.3.130.0 130 |
| AddMap 10.2.129.0 129 |
| AddMap 10.3.130.0 130 |
| |
| |
|===============================================================|
AddMap 1.0.128.0 128
AddMap 10.0.128.0 128
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -16,6 +16,10 @@
# A ``#'' indicates the beginning of a comment; characters up to the end
# of the line are not interpreted by routines which search the file.
#
# The Well Known Ports are those from 0 through 1023.
# The Registered Ports are those from 1024 through 49151
# The Dynamic and/or Private Ports are those from 49152 through 65535
#
# Service names may contain any printable character other than a field
# delimiter, newline, or comment character.
#
......@@ -34,6 +38,7 @@ chargen 19/tcp ttytst source # Character Generator
chargen 19/udp ttytst source # Character Generator
ftp-data 20/tcp # File Transfer [Default Data]
ftp 21/tcp # File Transfer [Control]
ssh 22/tcp # Secure Shell Login
telnet 23/tcp
smtp 25/tcp mail # Simple Mail Transfer
time 37/tcp timserver
......@@ -65,8 +70,9 @@ netbios-dgm 138/udp # NETBIOS Datagram Service
netbios-ssn 139/tcp # NETBIOS Session Service
snmp 161/udp
snmptrap 162/udp snmp-trap
https 443/tcp
https 443/udp
#
# Berkeley-specific services
#
exec 512/tcp
......@@ -89,6 +95,10 @@ netwall 533/udp # -for emergency broadcasts
uucp 540/tcp uucpd # uucp daemon
remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem
#
# Registered-port services
#
nfsd 2049/tcp nfs # NFS server daemon
#
# Acorn-specific services
#
aun-data 32768/udp
......
......@@ -8,7 +8,7 @@
|=================================================================
IF "<Inet$HostName>" <> "" AND "<Inet$HostName>" <> "ARM_NoName" THEN Error BootNet should not be run after !Internet. Use InetSetup to configure AUN + TCP/IP.
IF "<Wimp$State>" = "desktop" THEN Error BootNet should only be run outside the desktop
Set Alias$RMIfThere SetEval Test$Eval 1|MRMEnsure %%1 0 SetEval Test$Eval 0|MIf Test$Eval THEN %%0 %%1|MUnset Test$Eval
Set Alias$RMIfThere SetEval Inet$TestEval 1|MRMEnsure %%1 0 SetEval Inet$TestEval 0|MIf Inet$TestEval THEN %%0 %%1|MUnset Inet$TestEval
|
| Check for RISC OS 3.50 or later
|
......
......@@ -24,7 +24,7 @@
| end
|
If "%*0" = "" Then Error Do not run me with no parameters
If "%1" = "" Then Obey !MkMods %0 arp gethost ifconfig ifrconfig inetstat ipvars map-mbone md5 mrinfo mtrace newfiler ping pong route showstat sysctl traceroute utils
If "%1" = "" Then Obey !MkMods %0 arp gethost ifconfig ifrconfig inetstat ipvars map-mbone md5 mrinfo mtrace newfiler ping pong route showstat sysctl tftp traceroute utils
If "%1" = "" Then Obey
dir %1
......
......@@ -368,8 +368,11 @@ delete:
printf("cannot locate %s\n", host);
return (1);
}
if (rtmsg(RTM_DELETE) == 0)
if (rtmsg(RTM_DELETE) == 0) {
printf("%s (%s) deleted\n", host, inet_ntoa(sin->sin_addr));
return (0);
}
return (1);
}
/*
......
......@@ -168,11 +168,11 @@ struct cmd {
* Maryland principally by James O'Toole and Chris Torek.
*/
void in_status();
int in_getaddr();
void in_getaddr();
void xns_status();
int xns_getaddr();
void xns_getaddr();
void iso_status();
int iso_getaddr();
void iso_getaddr();
void ether_status();
/* Known address families */
......@@ -180,7 +180,7 @@ struct afswtch {
char *af_name;
short af_af;
void (*af_status)();
int (*af_getaddr)();
void (*af_getaddr)();
int af_difaddr;
int af_aifaddr;
caddr_t af_ridreq;
......@@ -702,7 +702,7 @@ void ether_status(void)
char *cp;
struct sockaddr *sa;
struct sockaddr_dl *sdl;
int n,m;
int n;
char ifacename[IFNAMSIZ];
/*
......@@ -747,7 +747,7 @@ void ether_status(void)
if ((n = sdl->sdl_alen) > 0) {
printf (" ether ");
while (--n >= 0)
m += printf("%02x%c",
printf("%02x%c",
*cp++ & 0xff,
n > 0 ? ':' : ' ');
putchar('\n');
......@@ -796,7 +796,7 @@ struct sockaddr_in *sintab[] = {
SIN(ridreq.ifr_addr), SIN(addreq.ifra_addr),
SIN(addreq.ifra_mask), SIN(addreq.ifra_broadaddr)};
int in_getaddr(char *s, int which)
void in_getaddr(char *s, int which)
{
register struct sockaddr_in *sin = sintab[which];
struct hostent *hp;
......@@ -855,7 +855,7 @@ struct sockaddr_ns *snstab[] = {
SNS(ridreq.ifr_addr), SNS(addreq.ifra_addr),
SNS(addreq.ifra_mask), SNS(addreq.ifra_broadaddr)};
int xns_getaddr(char *addr, int which)
void xns_getaddr(char *addr, int which)
{
struct sockaddr_ns *sns = snstab[which];
struct ns_addr ns_addr();
......@@ -872,7 +872,7 @@ struct sockaddr_iso *sisotab[] = {
SISO(iso_ridreq.ifr_Addr), SISO(iso_addreq.ifra_addr),
SISO(iso_addreq.ifra_mask), SISO(iso_addreq.ifra_dstaddr)};
int iso_getaddr(char *addr, int which)
void iso_getaddr(char *addr, int which)
{
register struct sockaddr_iso *siso = sisotab[which];
struct iso_addr *iso_addr();
......
......@@ -401,7 +401,7 @@ void printb(char *s, register unsigned short v, register char *bits)
void printhelp(void)
{
printf("Usage: ifrconfig [-e] <interface> [ revarp | bootp ] [ netmask ]\n");
printf(" configure network interface address and netmark via Reverse ARP\n");
printf(" configure network interface address and netmask via Reverse ARP or BOOTP\n");
printf("Options: -e write any errors to Inet$Error\n");
}
......
......@@ -209,7 +209,6 @@ main(int argc, char *argv[])
int ch;
char *nlistf = NULL, *memf = NULL;
char buf[_POSIX2_LINE_MAX];
char buf2[_POSIX2_LINE_MAX];
if (cp = rindex(argv[0], '/'))
prog = cp + 1;
......
......@@ -166,4 +166,6 @@ int main(void)
sockets_init();
atexit(sockets_discard);
sockets_list_interfaces();
return 0;
}
......@@ -191,11 +191,6 @@ Neighbor *find_neighbor(addr, node)
#ifdef __STDC__
void
log(int severity, int syserr, char *format, ...)
{
va_list ap;
char fmt[100];
va_start(ap, format);
#else
/*VARARGS3*/
void
......@@ -203,13 +198,11 @@ log(severity, syserr, format, va_alist)
int severity, syserr;
char *format;
va_dcl
#endif
{
va_list ap;
char fmt[100];
va_start(ap);
#endif
switch (debug) {
case 0: if (severity > LOG_WARNING) return;
case 1: if (severity > LOG_NOTICE ) return;
......@@ -220,7 +213,13 @@ log(severity, syserr, format, va_alist)
strcpy(fmt, "warning - ");
strncat(fmt, format, sizeof(fmt)-strlen(fmt));
fmt[sizeof(fmt)-1]='\0';
#ifdef __STDC__
va_start(ap, format);
#else
va_start(ap);
#endif
vfprintf(stderr, fmt, ap);
va_end(ap);
if (syserr == 0)
fprintf(stderr, "\n");
#ifdef __riscos
......
......@@ -69,27 +69,35 @@ MDXFileChunk(const char *filename, char *buf, off_t ofs, off_t len)
handle = fopen(filename, "rb");
if (handle == NULL)
return NULL;
if (fseek(handle, 0, SEEK_END) != 0)
return NULL;
if (fseek(handle, 0, SEEK_END) != 0) {
i = -1;
goto error;
}
stbuf.st_size = ftell(handle);
#else
MDXInit(&ctx);
f = open(filename, O_RDONLY);
if (f < 0)
return 0;
if (fstat(f, &stbuf) < 0)
return 0;
if (fstat(f, &stbuf) < 0) {
i = -1;
goto error;
}
#endif
if (ofs > stbuf.st_size)
ofs = stbuf.st_size;
if ((len == 0) || (len > stbuf.st_size - ofs))
len = stbuf.st_size - ofs;
#ifdef RISCOS_TWEAK
if (fseek(handle, ofs, SEEK_SET) != 0)
return NULL;
if (fseek(handle, ofs, SEEK_SET) != 0) {
i = -1;
goto error;
}
#else
if (lseek(f, ofs, SEEK_SET) < 0)
return 0;
if (lseek(f, ofs, SEEK_SET) < 0) {
i = -1;
goto error;
}
#endif
n = len;
i = 0;
......@@ -111,6 +119,7 @@ MDXFileChunk(const char *filename, char *buf, off_t ofs, off_t len)
MDXUpdate(&ctx, buffer, i);
n -= i;
}
error:
e = errno;
#ifdef RISCOS_TWEAK
fclose(handle);
......
......@@ -137,23 +137,17 @@ inet_name(addr)
#ifdef __STDC__
void
log(int severity, int syserr, char *format, ...)
{
va_list ap;
char fmt[100];
va_start(ap, format);
#else
void
log(severity, syserr, format, va_alist)
int severity, syserr;
char *format;
va_dcl
#endif
{
va_list ap;
char fmt[100];
va_start(ap);
#endif
switch (debug) {
case 0:
if (severity > LOG_WARNING)
......@@ -170,7 +164,13 @@ log(severity, syserr, format, va_alist)
strcpy(fmt, "warning - ");
strncat(fmt, format, sizeof(fmt)-strlen(fmt));
fmt[sizeof(fmt)-1]='\0';
#ifdef __STDC__
va_start(ap, format);
#else
va_start(ap);
#endif
vfprintf(stderr, fmt, ap);
va_end(ap);
if (syserr == 0)
fprintf(stderr, "\n");
#ifdef __riscos
......
......@@ -3236,11 +3236,6 @@ check_vif_state()
#ifdef __STDC__
void
log(int severity, int syserr, char *format, ...)
{
va_list ap;
char fmt[100];
va_start(ap, format);
#else
/*VARARGS3*/
void
......@@ -3248,13 +3243,11 @@ log(severity, syserr, format, va_alist)
int severity, syserr;
char *format;
va_dcl
#endif
{
va_list ap;
char fmt[100];
va_start(ap);
#endif
switch (debug) {
case 0: if (severity > LOG_WARNING) return;
case 1: if (severity > LOG_NOTICE) return;
......@@ -3265,7 +3258,13 @@ log(severity, syserr, format, va_alist)
strcpy(fmt, "warning - ");
strncat(fmt, format, sizeof(fmt)-strlen(fmt));
fmt[sizeof(fmt)-1]='\0';
#ifdef __STDC__
va_start(ap, format);
#else
va_start(ap);
#endif
vfprintf(stderr, fmt, ap);
va_end(ap);
if (syserr == 0)
fprintf(stderr, "\n");
#ifdef __riscos
......
......@@ -96,6 +96,7 @@ int filer_task(void)
}
_kernel_raise_error((_kernel_oserror *) &nofiler_err);
/* NOTREACHED */
}
void startfilers(void)
......
......@@ -125,6 +125,7 @@ main(int argc, char *argv[])
/*
* List all variables known to the system.
*/
void
listall(char *path, struct list *lp)
{
int lvl2;
......@@ -142,6 +143,7 @@ listall(char *path, struct list *lp)
* Parse a name into an index.
* Lookup and print out the attribute if it exists.
*/
void
parse(char *pathname, char *string, int flags)
{
int indx, value;
......@@ -187,6 +189,7 @@ parse(char *pathname, char *string, int flags)
/*
* Scan a list of names searching for a particular name.
*/
int
findname(char *string, char *level, char **bufp, struct list *namelist)
{
char *name;
......
......@@ -201,11 +201,9 @@ parse(char *string)
newval = &intval;
newsize = sizeof intval;
break;
break;
case CTLTYPE_STRING:
break;
case CTLTYPE_QUAD:
break;
#ifdef __riscos
sscanf(newval, "%ld", &quadval);
#else
......
|
| Copyright (c) 2016, RISC OS Open Ltd
| All rights reserved.
|
| Redistribution and use in source and binary forms, with or without
| modification, are permitted provided that the following conditions are met:
| * Redistributions of source code must retain the above copyright
| notice, this list of conditions and the following disclaimer.
| * Redistributions in binary form must reproduce the above copyright
| notice, this list of conditions and the following disclaimer in the
| documentation and/or other materials provided with the distribution.
| * Neither the name of RISC OS Open Ltd nor the names of its contributors
| may be used to endorse or promote products derived from this software
| without specific prior written permission.
|
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
| AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
| IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
| ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
| LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
| CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
| SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
| INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
| CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
| ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
| POSSIBILITY OF SUCH DAMAGE.
|
Dir <Obey$Dir>
amu_machine all THROWBACK=-throwback
|
| Copyright (c) 2016, RISC OS Open Ltd
| All rights reserved.
|
| Redistribution and use in source and binary forms, with or without
| modification, are permitted provided that the following conditions are met:
| * Redistributions of source code must retain the above copyright
| notice, this list of conditions and the following disclaimer.
| * Redistributions in binary form must reproduce the above copyright
| notice, this list of conditions and the following disclaimer in the
| documentation and/or other materials provided with the distribution.
| * Neither the name of RISC OS Open Ltd nor the names of its contributors
| may be used to endorse or promote products derived from this software
| without specific prior written permission.
|
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
| AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
| IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
| ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
| LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
| CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
| SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
| INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
| CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
| ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
| POSSIBILITY OF SUCH DAMAGE.
|
Dir <Obey$Dir>
amu_machine clean
stripdepnd
\ No newline at end of file