diff --git a/doc/doxygen/html/arch_8h-source.html b/doc/doxygen/html/arch_8h-source.html new file mode 100644 index 0000000..d9e9635 --- /dev/null +++ b/doc/doxygen/html/arch_8h-source.html @@ -0,0 +1,73 @@ + + +Ubixos: arch.h Source File + + + +

arch.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_ARCH_H__
+00036 #define __LWIP_ARCH_H__
+00037 
+00038 #ifndef LITTLE_ENDIAN
+00039 #define LITTLE_ENDIAN 1234
+00040 #endif
+00041 
+00042 #ifndef BIG_ENDIAN
+00043 #define BIG_ENDIAN 4321
+00044 #endif
+00045 
+00046 #include "arch/cpu.h"
+00047 #include "arch/cc.h"
+00048 
+00049 #ifndef PACK_STRUCT_BEGIN
+00050 #define PACK_STRUCT_BEGIN
+00051 #endif /* PACK_STRUCT_BEGIN */
+00052 
+00053 #ifndef PACK_STRUCT_END
+00054 #define PACK_STRUCT_END
+00055 #endif /* PACK_STRUCT_END */
+00056 
+00057 #ifndef PACK_STRUCT_FIELD
+00058 #define PACK_STRUCT_FIELD(x) x
+00059 #endif /* PACK_STRUCT_FIELD */
+00060 
+00061 #endif /* __LWIP_ARCH_H__ */
+

Generated on Wed Apr 28 17:49:30 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/arp_8h-source.html b/doc/doxygen/html/arp_8h-source.html new file mode 100644 index 0000000..520b8b1 --- /dev/null +++ b/doc/doxygen/html/arp_8h-source.html @@ -0,0 +1,107 @@ + + +Ubixos: arp.h Source File + + + +

arp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. All advertising materials mentioning features or use of this software
+00014  *    must display the following acknowledgement:
+00015  *      This product includes software developed by the Swedish Institute
+00016  *      of Computer Science and its contributors.
+00017  * 4. Neither the name of the Institute nor the names of its contributors 
+00018  *    may be used to endorse or promote products derived from this software 
+00019  *    without specific prior written permission. 
+00020  *
+00021  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00022  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00023  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00024  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00025  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00026  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00027  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00028  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00029  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00030  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00031  * SUCH DAMAGE. 
+00032  *
+00033  * This file is part of the lwIP TCP/IP stack.
+00034  * 
+00035  * Author: Adam Dunkels <adam@sics.se>
+00036  *
+00037  * $Id$
+00038  *
+00039  */
+00040 
+00041 #ifndef __NETIF_ARP_H__
+00042 #define __NETIF_ARP_H__
+00043 
+00044 #include "net/pbuf.h"
+00045 #include "net/ipv4/ip_addr.h"
+00046 #include "net/netif.h"
+00047 
+00048 struct eth_addr {
+00049   PACK_STRUCT_FIELD(uInt8 addr[6]);
+00050 } PACK_STRUCT_STRUCT;
+00051   
+00052 struct eth_hdr {
+00053   PACK_STRUCT_FIELD(struct eth_addr dest);
+00054   PACK_STRUCT_FIELD(struct eth_addr src);
+00055   PACK_STRUCT_FIELD(uInt16 type);
+00056 } PACK_STRUCT_STRUCT;
+00057 
+00058 #define ARP_TMR_INTERVAL 10000
+00059 
+00060 #define ETHTYPE_ARP 0x0806
+00061 #define ETHTYPE_IP  0x0800
+00062 
+00063 /* Initializes ARP. */
+00064 void arp_init(void);
+00065 
+00066 /* The arp_tmr() function should be called every ARP_TMR_INTERVAL
+00067    microseconds (10 seconds). This function is responsible for
+00068    expiring old entries in the ARP table. */
+00069 void arp_tmr(void);
+00070 
+00071 /* Should be called for all incoming packets of IP kind. The function
+00072    does not alter the packet in any way, it just updates the ARP
+00073    table. After this function has been called, the normal TCP/IP stack
+00074    input function should be called. */
+00075 void arp_ip_input(struct netif *netif, struct pbuf *p);
+00076 
+00077 /* Should be called for incoming ARP packets. The pbuf in the argument
+00078    is freed by this function. If the function returns a pbuf (i.e.,
+00079    returns non-NULL), that pbuf constitutes an ARP reply and should be
+00080    sent out on the Ethernet. */
+00081 struct pbuf *arp_arp_input(struct netif *netif, struct eth_addr *ethaddr,
+00082                            struct pbuf *p);
+00083 
+00084 /* arp_loopup() is called to do an IP address -> Ethernet address
+00085    translation. If the function returns NULL, there is no mapping and
+00086    the arp_query() function should be called. */
+00087 struct eth_addr *arp_lookup(struct ip_addr *ipaddr);
+00088 
+00089 /* Constructs an ARP query packet for the given IP address. The
+00090    function returns a pbuf that contains the reply and that should be
+00091    sent out on the Ethernet. */
+00092 struct pbuf *arp_query(struct netif *netif, struct eth_addr *ethaddr,
+00093                        struct ip_addr *ipaddr);
+00094 
+00095 #endif /* __NETIF_ARP_H__ */
+

Generated on Wed Apr 28 17:49:30 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/atkbd_8h-source.html b/doc/doxygen/html/atkbd_8h-source.html new file mode 100644 index 0000000..4f40ec2 --- /dev/null +++ b/doc/doxygen/html/atkbd_8h-source.html @@ -0,0 +1,52 @@ + + +Ubixos: atkbd.h Source File + + + +

atkbd.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _KEYBOARD_H
+00025 #define _KEYBOARD_H
+00026 
+00027 #define shiftKey      1
+00028 #define controlKey    2
+00029 #define altKey        4
+00030 #define ledNumlock    2
+00031 #define ledScrolllock 1
+00032 #define ledCapslock   4
+00033 
+00034 int keyboardInit();
+00035 void keyboardISR();
+00036 void keyboardHandler();
+00037 void setLED();
+00038 
+00039 #endif
+00040 
+

Generated on Wed Apr 28 17:49:30 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/bioscall_8h-source.html b/doc/doxygen/html/bioscall_8h-source.html new file mode 100644 index 0000000..bb62757 --- /dev/null +++ b/doc/doxygen/html/bioscall_8h-source.html @@ -0,0 +1,21 @@ + + +Ubixos: bioscall.h Source File + + + +

bioscall.h

00001 #include <ubixos/types.h>
+00002 
+00003 #define EFLAG_TF         0x100
+00004 #define EFLAG_IF         0x200
+00005 #define EFLAG_IOPL3      0x3000
+00006 #define EFLAG_VM         0x20000
+00007 
+00008 void biosCall(int biosInt,int eax,int ebx,int ecx,int edx,int esi,int edi,int es,int ds);
+00009 void bios16Code();
+

Generated on Wed Apr 28 17:49:30 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/boot_2boot2_2lib_8h-source.html b/doc/doxygen/html/boot_2boot2_2lib_8h-source.html new file mode 100644 index 0000000..a3a2535 --- /dev/null +++ b/doc/doxygen/html/boot_2boot2_2lib_8h-source.html @@ -0,0 +1,36 @@ + + +Ubixos: lib.h Source File + + + +

lib.h

00001 /*
+00002  * Copyright (c) 1998 Robert Nordier
+00003  * All rights reserved.
+00004  *
+00005  * Redistribution and use in source and binary forms are freely
+00006  * permitted provided that the above copyright notice and this
+00007  * paragraph and the following disclaimer are duplicated in all
+00008  * such forms.
+00009  *
+00010  * This software is provided "AS IS" and without any express or
+00011  * implied warranties, including, without limitation, the implied
+00012  * warranties of merchantability and fitness for a particular
+00013  * purpose.
+00014  */
+00015 
+00016 /*
+00017  * $FreeBSD: src/sys/boot/i386/boot2/lib.h,v 1.2 1999/08/28 00:40:02 peter Exp $
+00018  */
+00019 
+00020 void sio_init(void);
+00021 void sio_flush(void);
+00022 void sio_putc(int);
+00023 int sio_getc(void);
+00024 int sio_ischar(void);
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/boot_2boot2_2ubixfs_8h-source.html b/doc/doxygen/html/boot_2boot2_2ubixfs_8h-source.html new file mode 100644 index 0000000..63883a6 --- /dev/null +++ b/doc/doxygen/html/boot_2boot2_2ubixfs_8h-source.html @@ -0,0 +1,56 @@ + + +Ubixos: ubixfs.h Source File + + + +

ubixfs.h

00001 #define DOSPTYP_UBX      0x2A   /* UbixFS partition type */
+00002 #define UBIXDISKMAGIC    ((u_int32_t)0x45) /* The disk magic number */
+00003 #define MAXUBIXPARTITIONS 16
+00004 #define UBIXFSMAGIC      ((u_int32_t)0x69) /* The File System Magic Number */
+00005 
+00006 typedef unsigned long uLong;
+00007 typedef unsigned short uShort;
+00008 
+00009 
+00010 struct ubixDiskLabel {
+00011   u_int32_t magicNum;
+00012   u_int32_t magicNum2;
+00013   u_int16_t driveType;
+00014   u_int16_t numPartitions;
+00015   struct  ubixPartitions {             /* the partition table */
+00016     u_int32_t p_size;       /* number of sectors in partition */
+00017     u_int32_t p_offset;     /* starting sector */
+00018     u_int32_t p_fsize;      /* filesystem basic fragment size */
+00019     u_int32_t p_bsize;      /* BAT size */
+00020     u_int8_t p_fstype;      /* filesystem type, see below */
+00021     u_int8_t p_frag;        /* filesystem fragments per block */
+00022         } partitions[MAXUBIXPARTITIONS];
+00023   };
+00024 
+00025 //Block Allocation Table Entry
+00026 struct blockAllocationTableEntry {
+00027   long attributes; //Block Attributes
+00028   long realSector; //Real Sector  
+00029   long nextBlock;  //Sector Of Next Block
+00030   long reserved;   //Reserved
+00031   };
+00032 
+00033 
+00034 struct directoryEntry {
+00035   uLong  startCluster;   //Starting Cluster Of File
+00036   uLong  size;           //Size Of File
+00037   uLong  creationDate;  //Date Created
+00038   uLong  lastModified;  //Date Last Modified
+00039   uLong  uid;           //UID Of Owner
+00040   uLong  gid;           //GID Of Owner
+00041   uShort attributes;    //Files Attributes
+00042   uShort permissions;   //Files Permissions
+00043   char   fileName[256]; //File Name
+00044   };
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/btxv86_8h-source.html b/doc/doxygen/html/btxv86_8h-source.html new file mode 100644 index 0000000..6771ad5 --- /dev/null +++ b/doc/doxygen/html/btxv86_8h-source.html @@ -0,0 +1,75 @@ + + +Ubixos: btxv86.h Source File + + + +

btxv86.h

00001 /*
+00002  * Copyright (c) 1998 Robert Nordier
+00003  * All rights reserved.
+00004  *
+00005  * Redistribution and use in source and binary forms are freely
+00006  * permitted provided that the above copyright notice and this
+00007  * paragraph and the following disclaimer are duplicated in all
+00008  * such forms.
+00009  *
+00010  * This software is provided "AS IS" and without any express or
+00011  * implied warranties, including, without limitation, the implied
+00012  * warranties of merchantability and fitness for a particular
+00013  * purpose.
+00014  */
+00015 
+00016 /*
+00017  * $FreeBSD: src/sys/boot/i386/btx/lib/btxv86.h,v 1.5 1999/08/28 00:40:08 peter Exp $
+00018  */
+00019 
+00020 #ifndef _BTXV86_H_
+00021 #define _BTXV86_H_
+00022 
+00023 #include <sys/types.h>
+00024 
+00025 #define V86_ADDR   0x10000      /* Segment:offset address */
+00026 #define V86_CALLF  0x20000      /* Emulate far call */
+00027 #define V86_FLAGS  0x40000      /* Return flags */
+00028 
+00029 struct __v86 {
+00030     uint32_t ctl;               /* Control flags */
+00031     uint32_t addr;              /* Interrupt number or address */
+00032     uint32_t es;                /* V86 ES register */
+00033     uint32_t ds;                /* V86 DS register */
+00034     uint32_t fs;                /* V86 FS register */
+00035     uint32_t gs;                /* V86 GS register */
+00036     uint32_t eax;               /* V86 EAX register */
+00037     uint32_t ecx;               /* V86 ECX register */
+00038     uint32_t edx;               /* V86 EDX register */
+00039     uint32_t ebx;               /* V86 EBX register */
+00040     uint32_t efl;               /* V86 eflags register */
+00041     uint32_t ebp;               /* V86 EBP register */
+00042     uint32_t esi;               /* V86 ESI register */
+00043     uint32_t edi;               /* V86 EDI register */
+00044 };
+00045 
+00046 extern struct __v86 __v86;      /* V86 interface structure */
+00047 void __v86int(void);
+00048 
+00049 #define v86     __v86
+00050 #define v86int  __v86int
+00051 
+00052 extern u_int32_t        __base;
+00053 extern u_int32_t        __args;
+00054 
+00055 #define PTOV(pa)        ((caddr_t)(pa) - __base)
+00056 #define VTOP(va)        ((vm_offset_t)(va) + __base)
+00057 #define VTOPSEG(va)     (u_int16_t)(VTOP((caddr_t)va) >> 4)
+00058 #define VTOPOFF(va)     (u_int16_t)(VTOP((caddr_t)va) & 0xf)
+00059 
+00060 void __exit(int) __attribute__((__noreturn__));
+00061 void __exec(caddr_t, ...);
+00062 
+00063 #endif /* !_BTXV86_H_ */
+

Generated on Wed Apr 28 17:49:31 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/cc_8h-source.html b/doc/doxygen/html/cc_8h-source.html new file mode 100644 index 0000000..ff81a9a --- /dev/null +++ b/doc/doxygen/html/cc_8h-source.html @@ -0,0 +1,55 @@ + + +Ubixos: cc.h Source File + + + +

cc.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_CC_H__
+00036 #define __ARCH_CC_H__
+00037 
+00038 #define PACK_STRUCT_FIELD(x) x __attribute__((packed))
+00039 #define PACK_STRUCT_STRUCT __attribute__((packed))
+00040 #define PACK_STRUCT_BEGIN
+00041 #define PACK_STRUCT_END
+00042 
+00043 #endif /* __ARCH_CC_H__ */
+

Generated on Wed Apr 28 17:49:31 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/cdefs_8h-source.html b/doc/doxygen/html/cdefs_8h-source.html new file mode 100644 index 0000000..4568f6f --- /dev/null +++ b/doc/doxygen/html/cdefs_8h-source.html @@ -0,0 +1,49 @@ + + +Ubixos: cdefs.h Source File + + + +

cdefs.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _CDEFS_H
+00025 #define _CDRES_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define __dead2         __attribute__((__noreturn__))
+00030 
+00031 
+00032 #endif
+00033 
+00034 /***
+00035  END
+00036  ***/
+00037 
+

Generated on Wed Apr 28 17:49:31 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/cpu_8h-source.html b/doc/doxygen/html/cpu_8h-source.html new file mode 100644 index 0000000..c169488 --- /dev/null +++ b/doc/doxygen/html/cpu_8h-source.html @@ -0,0 +1,54 @@ + + +Ubixos: cpu.h Source File + + + +

cpu.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_CPU_H__
+00036 #define __ARCH_CPU_H__
+00037 
+00038 #ifndef BYTE_ORDER
+00039 #define BYTE_ORDER LITTLE_ENDIAN
+00040 #endif /* BYTE_ORDER */
+00041 
+00042 #endif /* __ARCH_CPU_H__ */
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/debug_8h-source.html b/doc/doxygen/html/debug_8h-source.html new file mode 100644 index 0000000..42ebb27 --- /dev/null +++ b/doc/doxygen/html/debug_8h-source.html @@ -0,0 +1,151 @@ + + +Ubixos: debug.h Source File + + + +

debug.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_DEBUG_H__
+00036 #define __LWIP_DEBUG_H__
+00037 
+00038 #ifdef LWIP_DEBUG
+00039 
+00040 #define ASSERT(x,y) if(!(y)) {printf("Assertion \"%s\" failed at line %d in %s\n", \
+00041                                      x, __LINE__, __FILE__); fflush(NULL); abort();}
+00042 
+00043 /* These defines control the amount of debugging output: */
+00044 #define MEM_TRACKING
+00045 
+00046 #define DEMO_DEBUG       1
+00047 
+00048 #define ARP_DEBUG        0
+00049 
+00050 #define NETIF_DEBUG      1
+00051 #define PBUF_DEBUG       0
+00052 #define DELIF_DEBUG      0
+00053 #define DROPIF_DEBUG     0
+00054 #define TUNIF_DEBUG      0
+00055 #define UNIXIF_DEBUG     0
+00056 #define TAPIF_DEBUG      0
+00057 
+00058 #define API_LIB_DEBUG    0
+00059 #define API_MSG_DEBUG    0
+00060 #define SOCKETS_DEBUG    1
+00061 #define ICMP_DEBUG       0
+00062 #define INET_DEBUG       0
+00063 #define IP_DEBUG         0
+00064 #define IP_REASS_DEBUG   1
+00065 #define MEM_DEBUG        0
+00066 #define MEMP_DEBUG       0
+00067 #define SYS_DEBUG        0
+00068 #define TCP_DEBUG        0
+00069 #define TCP_INPUT_DEBUG  0
+00070 #define TCP_FR_DEBUG     0
+00071 #define TCP_RTO_DEBUG    0
+00072 #define TCP_REXMIT_DEBUG 0
+00073 #define TCP_CWND_DEBUG   0
+00074 #define TCP_WND_DEBUG    0
+00075 #define TCP_OUTPUT_DEBUG 0
+00076 #define TCP_RST_DEBUG    0
+00077 #define TCP_QLEN_DEBUG   0
+00078 #define UDP_DEBUG        0
+00079 #define TCPIP_DEBUG      0
+00080 #define TCPDUMP_DEBUG    0
+00081 #define DHCP_DEBUG       1
+00082 
+00083 #include <stdio.h>
+00084 #define DEBUGF(debug, x) do { if(debug){ printf x; } } while(0)
+00085 
+00086 
+00087 #else /* LWIP_DEBUG */
+00088 
+00089 /* DEBUG is not defined, so we define null macros for ASSERT and DEBUGF */
+00090 
+00091 #define ASSERT(x,y)
+00092 #define DEBUGF(debug, x)
+00093 
+00094 /* And we define those to be zero: */
+00095 
+00096 #define DEMO_DEBUG       0
+00097 #define ARP_DEBUG        0
+00098 #define NETIF_DEBUG      0
+00099 #define PBUF_DEBUG       0
+00100 #define DELIF_DEBUG      0
+00101 #define DROPIF_DEBUG     0
+00102 #define TUNIF_DEBUG      0
+00103 #define UNIXIF_DEBUG     0
+00104 #define TAPIF_DEBUG      0
+00105 #define API_LIB_DEBUG    0
+00106 #define API_MSG_DEBUG    0
+00107 #define SOCKETS_DEBUG    0
+00108 #define ICMP_DEBUG       0
+00109 #define INET_DEBUG       0
+00110 #define IP_DEBUG         0
+00111 #define IP_REASS_DEBUG   0
+00112 #define MEM_DEBUG        0
+00113 #define MEMP_DEBUG       0
+00114 #define SYS_DEBUG        0
+00115 #define TCP_DEBUG        0
+00116 #define TCP_INPUT_DEBUG  0
+00117 #define TCP_FR_DEBUG     0
+00118 #define TCP_RTO_DEBUG    0
+00119 #define TCP_REXMIT_DEBUG 0
+00120 #define TCP_CWND_DEBUG   0
+00121 #define TCP_WND_DEBUG    0
+00122 #define TCP_OUTPUT_DEBUG 0
+00123 #define TCP_RST_DEBUG    0
+00124 #define TCP_QLEN_DEBUG   0
+00125 #define UDP_DEBUG        0
+00126 #define TCPIP_DEBUG      0
+00127 #define TCPDUMP_DEBUG    0
+00128 #define DHCP_DEBUG       0
+00129 
+00130 #endif /* LWIP_DEBUG */
+00131 
+00132 
+00133 #endif /* __LWIP_DEBUG_H__ */
+00134 
+00135 
+00136 
+00137 
+00138 
+00139 
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/def_8h-source.html b/doc/doxygen/html/def_8h-source.html new file mode 100644 index 0000000..178a10b --- /dev/null +++ b/doc/doxygen/html/def_8h-source.html @@ -0,0 +1,59 @@ + + +Ubixos: def.h Source File + + + +

def.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_DEF_H__
+00036 #define __LWIP_DEF_H__
+00037 
+00038 #define UMAX(a, b)      ((a) > (b) ? (a) : (b))
+00039 
+00040 #ifndef NULL
+00041 #define NULL ((void *)0)
+00042 #endif
+00043 
+00044 #include "arch/lib.h"
+00045 
+00046 #endif /* __LWIP_DEF_H__ */
+00047 
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/devfs_8h-source.html b/doc/doxygen/html/devfs_8h-source.html new file mode 100644 index 0000000..2f3b740 --- /dev/null +++ b/doc/doxygen/html/devfs_8h-source.html @@ -0,0 +1,62 @@ + + +Ubixos: devfs.h Source File + + + +

devfs.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The DevOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the DevOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _DEVFS_H
+00025 #define _DEVFS_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <vfs/file.h>
+00029 
+00030 struct devFsDevices {
+00031   struct devFsDevices *next;
+00032   struct devFsDevices *prev;
+00033   uInt8  devType;
+00034   uInt16 devMajor;
+00035   uInt16 devMinor;
+00036   char   devName[32];
+00037   };
+00038 
+00039 struct devFsInfo {
+00040   struct devFsDevices *deviceList;
+00041   };
+00042 
+00043 int devFSOpen(char *file,fileDescriptor *fd);
+00044 void devFSInit(struct mountPoints *mp);
+00045 int devFSEnable();
+00046 int devFSRead(fileDescriptor *fd,char *data,long offset,long size);
+00047 int devFSWrite(fileDescriptor *fd,char *data,long offset,long size);
+00048 int devFsMkNod(char *name,uInt8 type,uInt16 major,uInt16 minor);
+00049 
+00050 #endif
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/device_8h-source.html b/doc/doxygen/html/device_8h-source.html new file mode 100644 index 0000000..5bfe312 --- /dev/null +++ b/doc/doxygen/html/device_8h-source.html @@ -0,0 +1,68 @@ + + +Ubixos: device.h Source File + + + +

device.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _DEVICE_H
+00025 #define _DEVICE_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 struct deviceNode {
+00030   struct deviceNode    *prev;
+00031   struct deviceNode    *next;
+00032   char type;
+00033   int major;
+00034   int minor;
+00035   uInt32 size;
+00036   void *info;
+00037   void (*read)(void *,void *,uInt32,uInt32);
+00038   void (*write)(void *,void *,uInt32,uInt32);
+00039   void (*reset)(void *);
+00040   void (*init)(void *);
+00041   void (*ioctl)(void *);
+00042   void (*stop)(void *);
+00043   void (*start)(void *);
+00044   void (*standby)(void *);
+00045   };
+00046 
+00047 
+00048 void deviceAdd(int major,int minor,char type,void *read,void *write,void *reset,void *init,void *ioctl,void *stop,void *start,void *standby,void *info);
+00049 struct deviceNode *deviceFind(int major,int minor);
+00050 
+00051 #endif
+00052 
+00053 /***
+00054  END
+00055  ***/
+00056 
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/device_8old_8h-source.html b/doc/doxygen/html/device_8old_8h-source.html new file mode 100644 index 0000000..3d0438e --- /dev/null +++ b/doc/doxygen/html/device_8old_8h-source.html @@ -0,0 +1,70 @@ + + +Ubixos: device.old.h Source File + + + +

device.old.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _DEVICE_H
+00025 #define _DEVICE_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 struct device {
+00030   struct net *net;
+00031   uInt16 ioAddr;
+00032   uInt32 irq;
+00033   struct ei_device *priv;
+00034   uInt32 mtu;
+00035   };
+00036 
+00037 struct net {
+00038   char mac[6];
+00039   char broadcast[6];
+00040   };
+00041 
+00042 struct ei_device {
+00043   int txStartPage;
+00044   int rxStartPage;
+00045   int stopPage;
+00046   int currentPage;
+00047   uInt16 word16;
+00048   uInt32 pingPong;
+00049   int tx1;
+00050   int tx2;
+00051   };
+00052 
+00053 #endif
+00054 
+00055 /***
+00056  END
+00057  ***/
+00058 
+

Generated on Wed Apr 28 17:49:32 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/disklabel_8h-source.html b/doc/doxygen/html/disklabel_8h-source.html new file mode 100644 index 0000000..8754933 --- /dev/null +++ b/doc/doxygen/html/disklabel_8h-source.html @@ -0,0 +1,501 @@ + + +Ubixos: disklabel.h Source File + + + +

disklabel.h

00001 /*
+00002  * Copyright (c) 1987, 1988, 1993
+00003  *      The Regents of the University of California.  All rights reserved.
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without
+00006  * modification, are permitted provided that the following conditions
+00007  * are met:
+00008  * 1. Redistributions of source code must retain the above copyright
+00009  *    notice, this list of conditions and the following disclaimer.
+00010  * 2. Redistributions in binary form must reproduce the above copyright
+00011  *    notice, this list of conditions and the following disclaimer in the
+00012  *    documentation and/or other materials provided with the distribution.
+00013  * 3. All advertising materials mentioning features or use of this software
+00014  *    must display the following acknowledgement:
+00015  *      This product includes software developed by the University of
+00016  *      California, Berkeley and its contributors.
+00017  * 4. Neither the name of the University nor the names of its contributors
+00018  *    may be used to endorse or promote products derived from this software
+00019  *    without specific prior written permission.
+00020  *
+00021  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+00022  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+00023  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+00024  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+00025  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+00026  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+00027  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+00028  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+00029  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00030  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+00031  * SUCH DAMAGE.
+00032  *
+00033  *      @(#)disklabel.h 8.2 (Berkeley) 7/10/94
+00034  * $FreeBSD: src/sys/sys/disklabel.h,v 1.49.2.7 2001/05/27 05:58:26 jkh Exp $
+00035  */
+00036 
+00037 #ifndef _SYS_DISKLABEL_H_
+00038 #define _SYS_DISKLABEL_H_
+00039 
+00040 #ifndef _KERNEL
+00041 #include <sys/types.h>
+00042 #endif
+00043 #include <sys/ioccom.h>
+00044 
+00045 /*
+00046  * Disk description table, see disktab(5)
+00047  */
+00048 #define _PATH_DISKTAB   "/etc/disktab"
+00049 #define DISKTAB         "/etc/disktab"          /* deprecated */
+00050 
+00051 /*
+00052  * Each disk has a label which includes information about the hardware
+00053  * disk geometry, filesystem partitions, and drive specific information.
+00054  * The label is in block 0 or 1, possibly offset from the beginning
+00055  * to leave room for a bootstrap, etc.
+00056  */
+00057 
+00058 /* XXX these should be defined per controller (or drive) elsewhere, not here! */
+00059 #ifdef __i386__
+00060 #define LABELSECTOR     1                       /* sector containing label */
+00061 #define LABELOFFSET     0                       /* offset of label in sector */
+00062 #endif
+00063 
+00064 #ifdef __alpha__
+00065 #define LABELSECTOR     0
+00066 #define LABELOFFSET     64
+00067 #endif
+00068 
+00069 #ifndef LABELSECTOR
+00070 #define LABELSECTOR     0                       /* sector containing label */
+00071 #endif
+00072 
+00073 #ifndef LABELOFFSET
+00074 #define LABELOFFSET     64                      /* offset of label in sector */
+00075 #endif
+00076 
+00077 #define DISKMAGIC       ((u_int32_t)0x82564557) /* The disk magic number */
+00078 #ifndef MAXPARTITIONS
+00079 #define MAXPARTITIONS   8
+00080 #endif
+00081 
+00082 #define LABEL_PART      2               /* partition containing label */
+00083 #define RAW_PART        2               /* partition containing whole disk */
+00084 #define SWAP_PART       1               /* partition normally containing swap */
+00085 
+00086 #ifndef LOCORE
+00087 struct disklabel {
+00088         u_int32_t d_magic;              /* the magic number */
+00089         u_int16_t d_type;               /* drive type */
+00090         u_int16_t d_subtype;            /* controller/d_type specific */
+00091         char      d_typename[16];       /* type name, e.g. "eagle" */
+00092 
+00093         /* 
+00094          * d_packname contains the pack identifier and is returned when
+00095          * the disklabel is read off the disk or in-core copy.
+00096          * d_boot0 and d_boot1 are the (optional) names of the
+00097          * primary (block 0) and secondary (block 1-15) bootstraps
+00098          * as found in /boot.  These are returned when using
+00099          * getdiskbyname(3) to retrieve the values from /etc/disktab.
+00100          */
+00101         union {
+00102                 char    un_d_packname[16];      /* pack identifier */
+00103                 struct {
+00104                         char *un_d_boot0;       /* primary bootstrap name */
+00105                         char *un_d_boot1;       /* secondary bootstrap name */
+00106                 } un_b;
+00107         } d_un;
+00108 #define d_packname      d_un.un_d_packname
+00109 #define d_boot0         d_un.un_b.un_d_boot0
+00110 #define d_boot1         d_un.un_b.un_d_boot1
+00111 
+00112                         /* disk geometry: */
+00113         u_int32_t d_secsize;            /* # of bytes per sector */
+00114         u_int32_t d_nsectors;           /* # of data sectors per track */
+00115         u_int32_t d_ntracks;            /* # of tracks per cylinder */
+00116         u_int32_t d_ncylinders;         /* # of data cylinders per unit */
+00117         u_int32_t d_secpercyl;          /* # of data sectors per cylinder */
+00118         u_int32_t d_secperunit;         /* # of data sectors per unit */
+00119 
+00120         /*
+00121          * Spares (bad sector replacements) below are not counted in
+00122          * d_nsectors or d_secpercyl.  Spare sectors are assumed to
+00123          * be physical sectors which occupy space at the end of each
+00124          * track and/or cylinder.
+00125          */
+00126         u_int16_t d_sparespertrack;     /* # of spare sectors per track */
+00127         u_int16_t d_sparespercyl;       /* # of spare sectors per cylinder */
+00128         /*
+00129          * Alternate cylinders include maintenance, replacement, configuration
+00130          * description areas, etc.
+00131          */
+00132         u_int32_t d_acylinders;         /* # of alt. cylinders per unit */
+00133 
+00134                         /* hardware characteristics: */
+00135         /*
+00136          * d_interleave, d_trackskew and d_cylskew describe perturbations
+00137          * in the media format used to compensate for a slow controller.
+00138          * Interleave is physical sector interleave, set up by the
+00139          * formatter or controller when formatting.  When interleaving is
+00140          * in use, logically adjacent sectors are not physically
+00141          * contiguous, but instead are separated by some number of
+00142          * sectors.  It is specified as the ratio of physical sectors
+00143          * traversed per logical sector.  Thus an interleave of 1:1
+00144          * implies contiguous layout, while 2:1 implies that logical
+00145          * sector 0 is separated by one sector from logical sector 1.
+00146          * d_trackskew is the offset of sector 0 on track N relative to
+00147          * sector 0 on track N-1 on the same cylinder.  Finally, d_cylskew
+00148          * is the offset of sector 0 on cylinder N relative to sector 0
+00149          * on cylinder N-1.
+00150          */
+00151         u_int16_t d_rpm;                /* rotational speed */
+00152         u_int16_t d_interleave;         /* hardware sector interleave */
+00153         u_int16_t d_trackskew;          /* sector 0 skew, per track */
+00154         u_int16_t d_cylskew;            /* sector 0 skew, per cylinder */
+00155         u_int32_t d_headswitch;         /* head switch time, usec */
+00156         u_int32_t d_trkseek;            /* track-to-track seek, usec */
+00157         u_int32_t d_flags;              /* generic flags */
+00158 #define NDDATA 5
+00159         u_int32_t d_drivedata[NDDATA];  /* drive-type specific information */
+00160 #define NSPARE 5
+00161         u_int32_t d_spare[NSPARE];      /* reserved for future use */
+00162         u_int32_t d_magic2;             /* the magic number (again) */
+00163         u_int16_t d_checksum;           /* xor of data incl. partitions */
+00164 
+00165                         /* filesystem and partition information: */
+00166         u_int16_t d_npartitions;        /* number of partitions in following */
+00167         u_int32_t d_bbsize;             /* size of boot area at sn0, bytes */
+00168         u_int32_t d_sbsize;             /* max size of fs superblock, bytes */
+00169         struct  partition {             /* the partition table */
+00170                 u_int32_t p_size;       /* number of sectors in partition */
+00171                 u_int32_t p_offset;     /* starting sector */
+00172                 u_int32_t p_fsize;      /* filesystem basic fragment size */
+00173                 u_int8_t p_fstype;      /* filesystem type, see below */
+00174                 u_int8_t p_frag;        /* filesystem fragments per block */
+00175                 union {
+00176                         u_int16_t cpg;  /* UFS: FS cylinders per group */
+00177                         u_int16_t sgs;  /* LFS: FS segment shift */
+00178                 } __partition_u1;
+00179 #define p_cpg   __partition_u1.cpg
+00180 #define p_sgs   __partition_u1.sgs
+00181         } d_partitions[MAXPARTITIONS];  /* actually may be more */
+00182 };
+00183 
+00184 static u_int16_t dkcksum(struct disklabel *lp);
+00185 
+00186 static __inline u_int16_t
+00187 dkcksum(struct disklabel *lp)
+00188 {
+00189         u_int16_t *start, *end;
+00190         u_int16_t sum = 0;
+00191 
+00192         start = (u_int16_t *)lp;
+00193         end = (u_int16_t *)&lp->d_partitions[lp->d_npartitions];
+00194         while (start < end)
+00195                 sum ^= *start++;
+00196         return (sum);
+00197 }
+00198 
+00199 #else /* LOCORE */
+00200         /*
+00201          * offsets for asm boot files.
+00202          */
+00203         .set    d_secsize,40
+00204         .set    d_nsectors,44
+00205         .set    d_ntracks,48
+00206         .set    d_ncylinders,52
+00207         .set    d_secpercyl,56
+00208         .set    d_secperunit,60
+00209         .set    d_end_,276              /* size of disk label */
+00210 #endif /* LOCORE */
+00211 
+00212 /* d_type values: */
+00213 #define DTYPE_SMD               1               /* SMD, XSMD; VAX hp/up */
+00214 #define DTYPE_MSCP              2               /* MSCP */
+00215 #define DTYPE_DEC               3               /* other DEC (rk, rl) */
+00216 #define DTYPE_SCSI              4               /* SCSI */
+00217 #define DTYPE_ESDI              5               /* ESDI interface */
+00218 #define DTYPE_ST506             6               /* ST506 etc. */
+00219 #define DTYPE_HPIB              7               /* CS/80 on HP-IB */
+00220 #define DTYPE_HPFL              8               /* HP Fiber-link */
+00221 #define DTYPE_FLOPPY            10              /* floppy */
+00222 #define DTYPE_CCD               11              /* concatenated disk */
+00223 #define DTYPE_VINUM             12              /* vinum volume */
+00224 #define DTYPE_DOC2K             13              /* Msys DiskOnChip */
+00225 
+00226 #if defined(PC98) && !defined(PC98_ATCOMPAT)
+00227 #define DSTYPE_SEC256           0x80            /* physical sector size=256 */
+00228 #endif
+00229 
+00230 #ifdef DKTYPENAMES
+00231 static char *dktypenames[] = {
+00232         "unknown",
+00233         "SMD",
+00234         "MSCP",
+00235         "old DEC",
+00236         "SCSI",
+00237         "ESDI",
+00238         "ST506",
+00239         "HP-IB",
+00240         "HP-FL",
+00241         "type 9",
+00242         "floppy",
+00243         "CCD",
+00244         "Vinum",
+00245         "DOC2K",
+00246         NULL
+00247 };
+00248 #define DKMAXTYPES      (sizeof(dktypenames) / sizeof(dktypenames[0]) - 1)
+00249 #endif
+00250 
+00251 /*
+00252  * Filesystem type and version.
+00253  * Used to interpret other filesystem-specific
+00254  * per-partition information.
+00255  */
+00256 #define FS_UNUSED       0               /* unused */
+00257 #define FS_SWAP         1               /* swap */
+00258 #define FS_V6           2               /* Sixth Edition */
+00259 #define FS_V7           3               /* Seventh Edition */
+00260 #define FS_SYSV         4               /* System V */
+00261 #define FS_V71K         5               /* V7 with 1K blocks (4.1, 2.9) */
+00262 #define FS_V8           6               /* Eighth Edition, 4K blocks */
+00263 #define FS_BSDFFS       7               /* 4.2BSD fast file system */
+00264 #define FS_MSDOS        8               /* MSDOS file system */
+00265 #define FS_BSDLFS       9               /* 4.4BSD log-structured file system */
+00266 #define FS_OTHER        10              /* in use, but unknown/unsupported */
+00267 #define FS_HPFS         11              /* OS/2 high-performance file system */
+00268 #define FS_ISO9660      12              /* ISO 9660, normally CD-ROM */
+00269 #define FS_BOOT         13              /* partition contains bootstrap */
+00270 #define FS_VINUM        14              /* Vinum drive */
+00271 
+00272 #ifdef  DKTYPENAMES
+00273 static char *fstypenames[] = {
+00274         "unused",
+00275         "swap",
+00276         "Version 6",
+00277         "Version 7",
+00278         "System V",
+00279         "4.1BSD",
+00280         "Eighth Edition",
+00281         "4.2BSD",
+00282         "MSDOS",
+00283         "4.4LFS",
+00284         "unknown",
+00285         "HPFS",
+00286         "ISO9660",
+00287         "boot",
+00288         "vinum",
+00289         NULL
+00290 };
+00291 #define FSMAXTYPES      (sizeof(fstypenames) / sizeof(fstypenames[0]) - 1)
+00292 #endif
+00293 
+00294 /*
+00295  * flags shared by various drives:
+00296  */
+00297 #define         D_REMOVABLE     0x01            /* removable media */
+00298 #define         D_ECC           0x02            /* supports ECC */
+00299 #define         D_BADSECT       0x04            /* supports bad sector forw. */
+00300 #define         D_RAMDISK       0x08            /* disk emulator */
+00301 #define         D_CHAIN         0x10            /* can do back-back transfers */
+00302 
+00303 /*
+00304  * Drive data for SMD.
+00305  */
+00306 #define d_smdflags      d_drivedata[0]
+00307 #define         D_SSE           0x1             /* supports skip sectoring */
+00308 #define d_mindist       d_drivedata[1]
+00309 #define d_maxdist       d_drivedata[2]
+00310 #define d_sdist         d_drivedata[3]
+00311 
+00312 /*
+00313  * Drive data for ST506.
+00314  */
+00315 #define d_precompcyl    d_drivedata[0]
+00316 #define d_gap3          d_drivedata[1]          /* used only when formatting */
+00317 
+00318 /*
+00319  * Drive data for SCSI.
+00320  */
+00321 #define d_blind         d_drivedata[0]
+00322 
+00323 #ifndef LOCORE
+00324 /*
+00325  * Structure used to perform a format or other raw operation, returning
+00326  * data and/or register values.  Register identification and format
+00327  * are device- and driver-dependent.
+00328  */
+00329 struct format_op {
+00330         char    *df_buf;
+00331         int      df_count;              /* value-result */
+00332         daddr_t  df_startblk;
+00333         int      df_reg[8];             /* result */
+00334 };
+00335 
+00336 /*
+00337  * Structure used internally to retrieve information about a partition
+00338  * on a disk.
+00339  */
+00340 struct partinfo {
+00341         struct disklabel *disklab;
+00342         struct partition *part;
+00343 };
+00344 
+00345 /* DOS partition table -- located in boot block */
+00346 
+00347 #if defined(PC98) && !defined(PC98_ATCOMPAT)
+00348 #define DOSBBSECTOR     0       /* DOS boot block relative sector number */
+00349 #define DOSLABELSECTOR  1       /* 0: 256b/s, 1: 512b/s */
+00350 #define DOSPARTOFF      0
+00351 #define NDOSPART        16
+00352 #define DOSPTYP_386BSD  0x94    /* 386BSD partition type */
+00353 #define MBR_PTYPE_FreeBSD 0x94  /* FreeBSD partition type */
+00354 
+00355 struct dos_partition {
+00356         unsigned char   dp_mid;
+00357 #define DOSMID_386BSD           (0x14|0x80) /* 386bsd|bootable */
+00358         unsigned char   dp_sid;
+00359 #define DOSSID_386BSD           (0x44|0x80) /* 386bsd|active */ 
+00360         unsigned char   dp_dum1;
+00361         unsigned char   dp_dum2;
+00362         unsigned char   dp_ipl_sct;
+00363         unsigned char   dp_ipl_head;
+00364         unsigned short  dp_ipl_cyl;
+00365         unsigned char   dp_ssect;       /* starting sector */
+00366         unsigned char   dp_shd;         /* starting head */
+00367         unsigned short  dp_scyl;        /* starting cylinder */
+00368         unsigned char   dp_esect;       /* end sector */
+00369         unsigned char   dp_ehd;         /* end head */
+00370         unsigned short  dp_ecyl;        /* end cylinder */
+00371         unsigned char   dp_name[16];
+00372 };
+00373 
+00374 #else /* IBMPC */
+00375 #define DOSBBSECTOR     0       /* DOS boot block relative sector number */
+00376 #define DOSPARTOFF      446
+00377 #define NDOSPART        4
+00378 #define DOSPTYP_386BSD  0xa5    /* 386BSD partition type */
+00379 #define DOSPTYP_LINSWP  0x82    /* Linux swap partition */
+00380 #define DOSPTYP_LINUX   0x83    /* Linux partition */
+00381 #define DOSPTYP_EXT     5       /* DOS extended partition */
+00382 
+00383 struct dos_partition {
+00384         unsigned char   dp_flag;        /* bootstrap flags */
+00385         unsigned char   dp_shd;         /* starting head */
+00386         unsigned char   dp_ssect;       /* starting sector */
+00387         unsigned char   dp_scyl;        /* starting cylinder */
+00388         unsigned char   dp_typ;         /* partition type */
+00389         unsigned char   dp_ehd;         /* end head */
+00390         unsigned char   dp_esect;       /* end sector */
+00391         unsigned char   dp_ecyl;        /* end cylinder */
+00392         u_int32_t       dp_start;       /* absolute starting sector number */
+00393         u_int32_t       dp_size;        /* partition size in sectors */
+00394 };
+00395 #endif
+00396 
+00397 #define DPSECT(s) ((s) & 0x3f)          /* isolate relevant bits of sector */
+00398 #define DPCYL(c, s) ((c) + (((s) & 0xc0)<<2)) /* and those that are cylinder */
+00399 
+00400 /*
+00401  * Disk-specific ioctls.
+00402  */
+00403                 /* get and set disklabel; DIOCGPART used internally */
+00404 #define DIOCGDINFO      _IOR('d', 101, struct disklabel)/* get */
+00405 #define DIOCSDINFO      _IOW('d', 102, struct disklabel)/* set */
+00406 #define DIOCWDINFO      _IOW('d', 103, struct disklabel)/* set, update disk */
+00407 #define DIOCGPART       _IOW('d', 104, struct partinfo) /* get partition */
+00408 #define DIOCGDVIRGIN    _IOR('d', 105, struct disklabel) /* get virgin label */
+00409 
+00410 #define DIOCWLABEL      _IOW('d', 109, int)     /* write en/disable label */
+00411 
+00412 #ifdef _KERNEL
+00413 
+00414 /*
+00415  * XXX encoding of disk minor numbers, should be elsewhere.
+00416  *
+00417  * See <sys/reboot.h> for a possibly better encoding.
+00418  *
+00419  * "cpio -H newc" can be used to back up device files with large minor
+00420  * numbers (but not ones >= 2^31).  Old cpio formats and all tar formats
+00421  * don't have enough bits, and cpio and tar don't notice the lossage.
+00422  * There are also some sign extension bugs.
+00423  */
+00424 
+00425 /*
+00426        3                   2                   1                   0
+00427      1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
+00428     _________________________________________________________________
+00429     | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
+00430     -----------------------------------------------------------------
+00431     |    TYPE     |UNIT_2 | SLICE   |  MAJOR?       |  UNIT   |PART |
+00432     -----------------------------------------------------------------
+00433 */
+00434 
+00435 #define DKMAXUNIT 0x1ff         /* Highest disk unit number */
+00436 
+00437 #define dkmakeminor(unit, slice, part) \
+00438                                 (((slice) << 16) | (((unit) & 0x1e0) << 16) | \
+00439                                 (((unit) & 0x1f) << 3) | (part))
+00440 static __inline dev_t
+00441 dkmodpart(dev_t dev, int part)
+00442 {
+00443         return (makedev(major(dev), (minor(dev) & ~7) | part));
+00444 }
+00445 
+00446 static __inline dev_t
+00447 dkmodslice(dev_t dev, int slice)
+00448 {
+00449         return (makedev(major(dev), (minor(dev) & ~0x1f0000) | (slice << 16)));
+00450 }
+00451 
+00452 #define dkpart(dev)             (minor(dev) & 7)
+00453 #define dkslice(dev)            ((minor(dev) >> 16) & 0x1f)
+00454 #define dktype(dev)             ((minor(dev) >> 25) & 0x7f)
+00455 
+00456 static __inline u_int
+00457 dkunit(dev_t dev)
+00458 {
+00459         return (((minor(dev) >> 16) & 0x1e0) | ((minor(dev) >> 3) & 0x1f));
+00460 }
+00461 
+00462 struct  buf;
+00463 struct  buf_queue_head;
+00464 
+00465 int     bounds_check_with_label __P((struct buf *bp, struct disklabel *lp,
+00466                                      int wlabel));
+00467 void    diskerr __P((struct buf *bp, char *what, int pri, int blkdone,
+00468                      struct disklabel *lp));
+00469 void    disksort __P((struct buf *ap, struct buf *bp));
+00470 char    *readdisklabel __P((dev_t dev, struct disklabel *lp));
+00471 void    bufqdisksort __P((struct buf_queue_head *ap, struct buf *bp));
+00472 int     setdisklabel __P((struct disklabel *olp, struct disklabel *nlp,
+00473                           u_long openmask));
+00474 int     writedisklabel __P((dev_t dev, struct disklabel *lp));
+00475 #ifdef __alpha__
+00476 void    alpha_fix_srm_checksum __P((struct buf *bp));
+00477 #endif
+00478 
+00479 #endif /* _KERNEL */
+00480 
+00481 #endif /* LOCORE */
+00482 
+00483 #ifndef _KERNEL
+00484 __BEGIN_DECLS
+00485 struct disklabel *getdiskbyname __P((const char *));
+00486 __END_DECLS
+00487 #endif
+00488 
+00489 #endif /* !_SYS_DISKLABEL_H_ */
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/diskslice_8h-source.html b/doc/doxygen/html/diskslice_8h-source.html new file mode 100644 index 0000000..af4adaa --- /dev/null +++ b/doc/doxygen/html/diskslice_8h-source.html @@ -0,0 +1,119 @@ + + +Ubixos: diskslice.h Source File + + + +

diskslice.h

00001 /*-
+00002  * Copyright (c) 1994 Bruce D. Evans.
+00003  * All rights reserved.
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without
+00006  * modification, are permitted provided that the following conditions
+00007  * are met:
+00008  * 1. Redistributions of source code must retain the above copyright
+00009  *    notice, this list of conditions and the following disclaimer.
+00010  * 2. Redistributions in binary form must reproduce the above copyright
+00011  *    notice, this list of conditions and the following disclaimer in the
+00012  *    documentation and/or other materials provided with the distribution.
+00013  *
+00014  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+00015  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+00016  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+00017  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+00018  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+00019  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+00020  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+00021  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+00022  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00023  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+00024  * SUCH DAMAGE.
+00025  *
+00026  * $FreeBSD: src/sys/sys/diskslice.h,v 1.36.2.1 2001/01/29 01:50:50 ken Exp $
+00027  */
+00028 
+00029 #ifndef _SYS_DISKSLICE_H_
+00030 #define _SYS_DISKSLICE_H_
+00031 
+00032 #ifndef _KERNEL
+00033 #include <sys/types.h>
+00034 #endif
+00035 #include <sys/ioccom.h>
+00036 
+00037 #define BASE_SLICE              2
+00038 #define COMPATIBILITY_SLICE     0
+00039 #define DIOCGSLICEINFO          _IOR('d', 111, struct diskslices)
+00040 #define DIOCSYNCSLICEINFO       _IOW('d', 112, int)
+00041 #define MAX_SLICES              32
+00042 #define WHOLE_DISK_SLICE        1
+00043 
+00044 struct  diskslice {
+00045         u_long  ds_offset;              /* starting sector */
+00046         u_long  ds_size;                /* number of sectors */
+00047         int     ds_type;                /* (foreign) slice type */
+00048 #ifdef PC98
+00049         int     ds_subtype;             /* sub slice type */
+00050         u_char  ds_name[16];            /* slice name */
+00051 #endif
+00052         struct disklabel *ds_label;     /* BSD label, if any */
+00053         void    *ds_dev;                /* devfs token for raw whole slice */
+00054 #ifdef MAXPARTITIONS                    /* XXX don't depend on disklabel.h */
+00055 #if MAXPARTITIONS !=    8               /* but check consistency if possible */
+00056 #error "inconsistent MAXPARTITIONS"
+00057 #endif
+00058 #else
+00059 #define MAXPARTITIONS   8
+00060 #endif
+00061         void    *ds_devs[MAXPARTITIONS];        /* XXX s.b. in label */
+00062         u_char  ds_openmask;            /* devs open */
+00063         u_char  ds_wlabel;              /* nonzero if label is writable */
+00064 };
+00065 
+00066 struct diskslices {
+00067         struct cdevsw *dss_cdevsw;      /* for containing device */
+00068         int     dss_first_bsd_slice;    /* COMPATIBILITY_SLICE is mapped here */
+00069         u_int   dss_nslices;            /* actual dimension of dss_slices[] */
+00070         u_int   dss_oflags;             /* copy of flags for "first" open */
+00071         int     dss_secmult;            /* block to sector multiplier */
+00072         int     dss_secshift;           /* block to sector shift (or -1) */
+00073         int     dss_secsize;            /* sector size */
+00074         struct diskslice
+00075                 dss_slices[MAX_SLICES]; /* actually usually less */
+00076 };
+00077 
+00078 #ifdef _KERNEL
+00079 
+00080 /* Flags for dsopen(). */
+00081 #define DSO_NOLABELS    1
+00082 #define DSO_ONESLICE    2
+00083 #define DSO_COMPATLABEL 4
+00084 
+00085 #define dsgetlabel(dev, ssp)    (ssp->dss_slices[dkslice(dev)].ds_label)
+00086 
+00087 struct buf;
+00088 struct disklabel;
+00089 
+00090 int     dscheck __P((struct buf *bp, struct diskslices *ssp));
+00091 void    dsclose __P((dev_t dev, int mode, struct diskslices *ssp));
+00092 void    dsgone __P((struct diskslices **sspp));
+00093 int     dsinit __P((dev_t dev, struct disklabel *lp,
+00094                      struct diskslices **sspp));
+00095 int     dsioctl __P((dev_t dev, u_long cmd, caddr_t data,
+00096                      int flags, struct diskslices **sspp));
+00097 int     dsisopen __P((struct diskslices *ssp));
+00098 struct diskslices *dsmakeslicestruct __P((int nslices, struct disklabel *lp));
+00099 char    *dsname __P((dev_t dev, int unit, int slice, int part,
+00100                      char *partname));
+00101 int     dsopen __P((dev_t dev, int mode, u_int flags,
+00102                     struct diskslices **sspp, struct disklabel *lp));
+00103 int     dssize __P((dev_t dev, struct diskslices **sspp));
+00104 
+00105 #endif /* _KERNEL */
+00106 
+00107 #endif /* !_SYS_DISKSLICE_H_ */
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/dma_8h-source.html b/doc/doxygen/html/dma_8h-source.html new file mode 100644 index 0000000..8064903 --- /dev/null +++ b/doc/doxygen/html/dma_8h-source.html @@ -0,0 +1,45 @@ + + +Ubixos: dma.h Source File + + + +

dma.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _DMA_H
+00025 #define _DMA_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 void dmaXfer(uChar channel,uLong address,uInt length,uChar read);
+00030 void _dmaXfer(uChar dmaChannel,uChar page,uInt offset,uInt length,uChar mode);
+00031 
+00032 #endif
+00033 
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/doxygen.css b/doc/doxygen/html/doxygen.css new file mode 100644 index 0000000..0564e82 --- /dev/null +++ b/doc/doxygen/html/doxygen.css @@ -0,0 +1,160 @@ +H1 { + text-align: center; + font-family: Arial, Helvetica, sans-serif; +} +H2 { + font-family: Geneva, Arial, Helvetica, sans-serif; +} +CAPTION { font-weight: bold } +DIV.qindex { width: 100%; + background-color: #eeeeff; + border: 4px solid #eeeeff; + text-align: center; + margin-bottom: 2px +} +A.qindex { text-decoration: none; font-weight: bold; } +A.qindex:hover { text-decoration: none; background-color: #ddddff } +A.qindexHL { text-decoration: none; font-weight: bold; + background-color: #6666cc; + color: #ffffff + } +A.qindexHL:hover { text-decoration: none; background-color: #6666cc } +A.qindexRef { text-decoration: none; font-weight: bold; } +A.qindexRef:hover { text-decoration: none; background-color: #ddddff } +A.qindexRefHL { text-decoration: none; font-weight: bold; + background-color: #6666cc; + color: #ffffff + } +A.qindexRefHL:hover { text-decoration: none; background-color: #6666cc } +A.el { text-decoration: none; font-weight: bold } +A.elRef { font-weight: bold } +A.code { text-decoration: none; font-weight: normal; color: #4444ee } +A.codeRef { font-weight: normal; color: #4444ee } +A:hover { text-decoration: none; background-color: #f2f2ff } +DL.el { margin-left: -1cm } +DIV.fragment { + width: 98%; + border: 1px solid #CCCCCC; + background-color: #f5f5f5; + padding-left: 4px; + margin: 4px; +} +DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } +TD.md { background-color: #f2f2ff; font-weight: bold; } +TD.mdname1 { background-color: #f2f2ff; font-weight: bold; color: #602020; } +TD.mdname { background-color: #f2f2ff; font-weight: bold; color: #602020; width: 600px; } +DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold } +DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller } +BODY { + background: white; + color: black; + margin-right: 20px; + margin-left: 20px; +} +TD.indexkey { + background-color: #eeeeff; + font-weight: bold; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px +} +TD.indexvalue { + background-color: #eeeeff; + font-style: italic; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px +} +TR.memlist { + background-color: #f0f0f0; +} +P.formulaDsp { text-align: center; } +IMG.formulaDsp { } +IMG.formulaInl { vertical-align: middle; } +SPAN.keyword { color: #008000 } +SPAN.keywordtype { color: #604020 } +SPAN.keywordflow { color: #e08000 } +SPAN.comment { color: #800000 } +SPAN.preprocessor { color: #806020 } +SPAN.stringliteral { color: #002080 } +SPAN.charliteral { color: #008080 } +.mdTable { + border: 1px solid #868686; + background-color: #f2f2ff; +} +.mdRow { + padding: 8px 20px; +} +.mdescLeft { + font-size: smaller; + font-family: Arial, Helvetica, sans-serif; + background-color: #FAFAFA; + padding-left: 8px; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; +} +.mdescRight { + font-size: smaller; + font-family: Arial, Helvetica, sans-serif; + font-style: italic; + background-color: #FAFAFA; + padding-left: 4px; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; + padding-bottom: 0px; + padding-right: 8px; +} +.memItemLeft { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-style: solid; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-family: Geneva, Arial, Helvetica, sans-serif; + font-size: 12px; +} +.memItemRight { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-style: solid; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-family: Geneva, Arial, Helvetica, sans-serif; + font-size: 13px; +} diff --git a/doc/doxygen/html/doxygen.png b/doc/doxygen/html/doxygen.png new file mode 100644 index 0000000..96ae72c --- /dev/null +++ b/doc/doxygen/html/doxygen.png Binary files differ diff --git a/doc/doxygen/html/driver_8h-source.html b/doc/doxygen/html/driver_8h-source.html new file mode 100644 index 0000000..26168c5 --- /dev/null +++ b/doc/doxygen/html/driver_8h-source.html @@ -0,0 +1,60 @@ + + +Ubixos: driver.h Source File + + + +

driver.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _DRIVER_H
+00025 #define _DRIVER_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 
+00030 typedef struct devMethodType devMethod;
+00031 
+00032 struct devMethodType {
+00033   };
+00034 
+00035 struct driverType {
+00036   const char *devName;
+00037   devMethod *methods;
+00038   }
+00039 
+00040 
+00041 
+00042 
+00043 #endif
+00044 
+00045 /***
+00046  END
+00047  ***/
+00048 
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/elf_8h-source.html b/doc/doxygen/html/elf_8h-source.html new file mode 100644 index 0000000..b08108d --- /dev/null +++ b/doc/doxygen/html/elf_8h-source.html @@ -0,0 +1,139 @@ + + +Ubixos: elf.h Source File + + + +

elf.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _ELF_H
+00025 #define _ELF_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define elfExecutable 0x002
+00030 #define elfLibrary    0x003
+00031 
+00032 
+00033 /* Elf Types */
+00034 #define ET_NONE         0  // No file type
+00035 #define ET_REL          1  // Relocatable file
+00036 #define ET_EXEC         2  // Executable file
+00037 #define ET_DYN          3  // Shared object file
+00038 #define ET_CORE         4  // Core file
+00039 #define ET_LOPROC  0xff00  // Processor-specific
+00040 #define ET_HIPROC  0xffff
+00041 /* End Elf Types */
+00042 
+00043 /* Elf Machine Types */
+00044 #define EM_NONE       0  // No machine
+00045 #define EM_M32        1  // AT&T WE 32100
+00046 #define EM_SPARC      2  // SPARC
+00047 #define EM_386        3  // Intel 80386
+00048 #define EM_68K        4  // Motorola 68000
+00049 #define EM_88K        5  // Motorola 88000
+00050 #define EM_860        7  // Intel 80860
+00051 #define EM_MIPS       8  // MIPS RS3000
+00052 /* End Elf Machines Types */
+00053 
+00054 /* Elf Version */
+00055 #define EV_NONE          0  // Invalid version
+00056 #define EV_CURRENT       1  // Current version
+00057 /* End Elf Version */
+00058 
+00059 /* Elf Program Header Types */
+00060 #define PT_NULL          0
+00061 #define PT_LOAD          1
+00062 #define PT_DYNAMIC       2
+00063 /* End Elf Program Header Types */
+00064 
+00065 typedef struct {
+00066   uChar  eIdent[16]; /* File identification. */
+00067   uShort eType;      /* File type. */
+00068   uShort eMachine;   /* Machine architecture. */
+00069   uLong  eVersion;   /* ELF format version. */
+00070   uLong  eEntry;     /* Entry point. */
+00071   uLong  ePhoff;     /* Program header file offset. */
+00072   uLong  eShoff;     /* Section header file offset. */
+00073   uLong  eFlags;     /* Architecture-specific flags. */
+00074   uShort eEhsize;    /* Size of ELF header in bytes. */
+00075   uShort ePhentsize; /* Size of program header entry. */
+00076   uShort ePhnum;     /* Number of program header entries. */
+00077   uShort eShentsize; /* Size of section header entry. */
+00078   uShort eShnum;     /* Number of section header entries. */
+00079   uShort eShstrndx;  /* Section name strings section. */
+00080   } elfHeader;
+00081 
+00082 typedef struct {
+00083   uLong phType;         /* Entry type. */
+00084   uLong phOffset;       /* File offset of contents. */
+00085   uLong phVaddr;        /* Virtual address in memory image. */
+00086   uLong phPaddr;        /* Physical address (not used). */
+00087   uLong phFilesz;       /* Size of contents in file. */
+00088   uLong phMemsz;        /* Size of contents in memory. */
+00089   uLong phFlags;        /* Access permission flags. */
+00090   uLong phAlign;        /* Alignment in memory and file. */
+00091   } elfProgramheader;
+00092 
+00093 typedef struct {
+00094   uLong shName;        /* Section name (index into the section header string table). */
+00095   uLong shType;        /* Section type. */
+00096   uLong shFlags;       /* Section flags. */
+00097   uLong shAddr;        /* Address in memory image. */
+00098   uLong shOffset;      /* Offset in file. */
+00099   uLong shSize;        /* Size in bytes. */
+00100   uLong shLink;        /* Index of a related section. */
+00101   uLong shInfo;        /* Depends on section type. */
+00102   uLong shAddralign;   /* Alignment in bytes. */
+00103   uLong shEntsize;     /* Size of each entry in section. */
+00104   } elfSectionheader;
+00105 
+00106 typedef struct {
+00107   uLong pltOffset;
+00108   uLong pltInfo;
+00109   } elfPltInfo;
+00110 
+00111 typedef struct {
+00112   uLong dynName;
+00113   uLong dynValue;
+00114   uLong dynSize;
+00115   uLong dynInfo;
+00116   } elfDynsym;
+00117 
+00118 typedef struct {
+00119   uInt32 dynVal;
+00120   uInt32 dynPtr;
+00121   } elfDynamic;
+00122 
+00123 char *elfGetShType(int);
+00124 char *elfGetPhType(int);
+00125 
+00126 #endif
+00127 
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/err_8h-source.html b/doc/doxygen/html/err_8h-source.html new file mode 100644 index 0000000..912fcea --- /dev/null +++ b/doc/doxygen/html/err_8h-source.html @@ -0,0 +1,85 @@ + + +Ubixos: err.h Source File + + + +

err.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_ERR_H__
+00036 #define __LWIP_ERR_H__
+00037 
+00038 #include <ubixos/types.h>
+00039 
+00040 #include "net/debug.h"
+00041 
+00042 #include "net/arch/cc.h"
+00043 
+00044 typedef Int8 err_t;
+00045 
+00046 /* Definitions for error constants. */
+00047 
+00048 #define ERR_OK    0      /* No error, everything OK. */
+00049 #define ERR_MEM  -1      /* Out of memory error.     */
+00050 #define ERR_BUF  -2      /* Buffer error.            */
+00051 
+00052 
+00053 #define ERR_ABRT -3      /* Connection aborted.      */
+00054 #define ERR_RST  -4      /* Connection reset.        */
+00055 #define ERR_CLSD -5      /* Connection closed.       */
+00056 #define ERR_CONN -6      /* Not connected.           */
+00057 
+00058 #define ERR_VAL  -7      /* Illegal value.           */
+00059 
+00060 #define ERR_ARG  -8      /* Illegal argument.        */
+00061 
+00062 #define ERR_RTE  -9      /* Routing problem.         */
+00063 
+00064 #define ERR_USE  -10     /* Address in use.          */
+00065 
+00066 
+00067 
+00068 #ifdef LWIP_DEBUG
+00069 extern char *lwip_strerr(err_t err);
+00070 #else
+00071 #define lwip_strerr(x) ""
+00072 #endif /* LWIP_DEBUG */
+00073 #endif /* __LWIP_ERR_H__ */
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ethernetif_8h-source.html b/doc/doxygen/html/ethernetif_8h-source.html new file mode 100644 index 0000000..2748005 --- /dev/null +++ b/doc/doxygen/html/ethernetif_8h-source.html @@ -0,0 +1,54 @@ + + +Ubixos: ethernetif.h Source File + + + +

ethernetif.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __NETIF_ETHERNETIF_H__
+00036 #define __NETIF_ETHERNETIF_H__
+00037 
+00038 #include "net/netif.h"
+00039 
+00040 void ethernetif_init(struct netif *netif);
+00041 
+00042 #endif /* __NETIF_ETHERNETIF_H__ */
+

Generated on Wed Apr 28 17:49:33 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/exec_8h-source.html b/doc/doxygen/html/exec_8h-source.html new file mode 100644 index 0000000..c781d3d --- /dev/null +++ b/doc/doxygen/html/exec_8h-source.html @@ -0,0 +1,45 @@ + + +Ubixos: exec.h Source File + + + +

exec.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _EXEC_H
+00025 #define _EXEC_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <ubixos/sched.h>
+00029 
+00030 uInt32 execThread(void (* tproc)(void),int stack,char *arg,char *descr);
+00031 void execFile(char *file,int argc,char **argv,int console);
+00032 
+00033 #endif
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/fdc_8h-source.html b/doc/doxygen/html/fdc_8h-source.html new file mode 100644 index 0000000..950285b --- /dev/null +++ b/doc/doxygen/html/fdc_8h-source.html @@ -0,0 +1,91 @@ + + +Ubixos: fdc.h Source File + + + +

fdc.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _FDC_H
+00025 #define _FDC_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 typedef struct DrvGeom {
+00030    byte heads;
+00031    byte tracks;
+00032    byte spt;
+00033 } drvGeom;
+00034 
+00035 
+00036 #define fdcMsr  (0x3f4)
+00037 #define fdcData (0x3f5)
+00038 #define fdcDir  (0x3f7)
+00039 #define fdcCcr  (0x3f7)
+00040 #define fdcDor  (0x3f2)
+00041 #define fdcDrs  (0x3f4)
+00042 
+00043 #define cmdWrite   (0xc5)
+00044 #define cmdRead    (0xe6)
+00045 #define cmdSeek    (0x0f)
+00046 #define cmdSensei  (0x08)
+00047 #define cmdRecal   (0x07)
+00048 #define cmdSpecify (0x03)
+00049 
+00050 #define dg144Heads  2     /* heads per drive (1.44M) */
+00051 #define dg144Tracks 80
+00052 #define dg144Spt    18
+00053 #define dg144Gap3rw 0x1b
+00054 #define dg168Gap3rw 0x1c
+00055 
+00056 
+00057 
+00058 void fdcInit();
+00059 void floppyIsr();
+00060 void floppyIsrhndlr();
+00061 void sendByte(int byte);
+00062 int getByte();
+00063 bool fdcRw(int block,byte *blockBuffer,bool read,unsigned long numSectors);
+00064 void block2Hts(int block,int *head,int *track,int *sector);
+00065 void motorOn(void);
+00066 void motorOff(void);
+00067 bool seek(int track);
+00068 bool waitFdc(bool sensei);
+00069 int getByte();
+00070 void sendByte(int byte);
+00071 void recalibrate(void);
+00072 void reset(void);
+00073 bool writeBlock(int block,byte *blockBuffer, unsigned long numSectors);
+00074 bool readBlock(int block,byte *blockBuffer, unsigned long numSectors);
+00075 void fdcWrite(void *info,void *,uInt32 startSector,uInt32 sectorCount);
+00076 void fdcRead(void *info,void *,uInt32 startSector,uInt32 sectorCount);
+00077 
+00078 #endif
+00079 
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/file_8h-source.html b/doc/doxygen/html/file_8h-source.html new file mode 100644 index 0000000..0ee484a --- /dev/null +++ b/doc/doxygen/html/file_8h-source.html @@ -0,0 +1,72 @@ + + +Ubixos: file.h Source File + + + +

file.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _FILE_H
+00025 #define _FILE_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <vfs/vfs.h>
+00029 
+00030 #define SEEK_SET 0x0
+00031 
+00032 struct taskFileInfo {
+00033   char *cwd;
+00034   };
+00035 
+00036 typedef struct userFileDescriptorStruct {
+00037   struct fileDescriptorStruct *fd;
+00038   uInt32 fdSize;
+00039   } userFileDescriptor;
+00040 
+00041 extern fileDescriptor *fdTable;
+00042 extern fileDescriptor *lastFd;
+00043 
+00044 fileDescriptor *fopen(const char *file,const char *flags);
+00045 int unlink(const char *path);
+00046 int fclose(fileDescriptor *fd);
+00047 int feof(fileDescriptor *fd);
+00048 int fgetc(fileDescriptor *fd);
+00049 size_t fread(void *ptr, size_t size, size_t nmemb,fileDescriptor *fd);
+00050 size_t fwrite(void *ptr,int size,int nmemb,fileDescriptor *fd);
+00051 int fseek(fileDescriptor *,long,int);
+00052 
+00053 void sysFseek(userFileDescriptor *,long,int);
+00054 
+00055 //Good
+00056 void sysChDir(const char *path);
+00057 void chDir(const char *path);
+00058 char *verifyDir(const char *path);
+00059 
+00060 #endif
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/files.html b/doc/doxygen/html/files.html new file mode 100644 index 0000000..d118a33 --- /dev/null +++ b/doc/doxygen/html/files.html @@ -0,0 +1,111 @@ + + +Ubixos: File Index + + + +

Ubixos File List

Here is a list of all documented files with brief descriptions: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
8259.h [code]
_types.h [code]
api.h [code]
api_msg.h [code]
arch.h [code]
arp.h [code]
atkbd.h [code]
bioscall.h [code]
btxv86.h [code]
cc.h [code]
cdefs.h [code]
cpu.h [code]
debug.h [code]
def.h [code]
devfs.h [code]
device.h [code]
device.old.h [code]
disklabel.h [code]
diskslice.h [code]
dma.h [code]
driver.h [code]
elf.h [code]
err.h [code]
ethernetif.h [code]
exec.h [code]
fdc.h [code]
file.h [code]
fork.h [code]
gdt.h [code]
hd.h [code]
ipv4/icmp.h [code]
ipv6/icmp.h [code]
idletask.h [code]
idt.h [code]
ipv4/inet.h [code]
ipv6/inet.h [code]
init.h [code]
io.h [code]
ipv4/ip.h [code]
ipv6/ip.h [code]
ipv4/ip_addr.h [code]
ipv6/ip_addr.h [code]
kmalloc.h [code]
kpanic.h [code]
kprint.h [code]
kprintf.h [code]
ld.h [code]
boot/boot2/lib.h [code]
include/net/arch/lib.h [code]
libcpp.h [code]
list.h [code]
lnc.h [code]
loopif.h [code]
lwipopts.h [code]
math.h [code]
mem.h [code]
memp.h [code]
mount.h [code]
ne2k.h [code]
net.h [code]
netif.h [code]
ogDisplay_UbixOS.h [code]
ogDisplay_VESA.h [code]
opt.h [code]
paging.h [code]
pbuf.h [code]
pci.h [code]
perf.h [code]
pit.h [code]
sched.h [code]
sde.h [code]
shell.h [code]
sockets.h [code]
stats.h [code]
stdarg.h [code]
lib/string.h [code]
string.h [code]
sys.h [code]
sys_arch.h [code]
syscall.h [code]
syscalls.h [code]
tcp.h [code]
tcpdump.h [code]
tcpip.h [code]
time.h [code]
times.h [code]
tss.h [code]
types.h [code]
boot/boot2/ubixfs.h [code]
include/ubixfs/ubixfs.h [code]
ubthread.h [code]
udp.h [code]
udpecho.h [code]
vfs.h [code]
video.h [code]
vitals.h [code]
vmm.h [code]
+
Generated on Wed Apr 28 17:49:27 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/fork_8h-source.html b/doc/doxygen/html/fork_8h-source.html new file mode 100644 index 0000000..0a52ad3 --- /dev/null +++ b/doc/doxygen/html/fork_8h-source.html @@ -0,0 +1,47 @@ + + +Ubixos: fork.h Source File + + + +

fork.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _FORK_H
+00025 #define _FORK_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <ubixos/sched.h>
+00029 
+00030 void sysFork();
+00031 
+00032 int forkCopyProcess(struct taskStruct *newProcess,long ebp,long edi,long esi,long none,long ebx,long ecx,long edx,long eip,long cs,long eflags,long esp,long ss);
+00033 
+00034 #endif
+00035 
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/gdt_8h-source.html b/doc/doxygen/html/gdt_8h-source.html new file mode 100644 index 0000000..10bc52d --- /dev/null +++ b/doc/doxygen/html/gdt_8h-source.html @@ -0,0 +1,100 @@ + + +Ubixos: gdt.h Source File + + + +

gdt.h

00001 
+00002 
+00003 
+00004 /**************************************************************************************
+00005  Copyright (c) 2002 The UbixOS Project
+00006  All rights reserved.
+00007 
+00008 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00009 
+00010 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00011 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00012 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00013 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00014 
+00015 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00016 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00017 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00018 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00019 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00020 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00021 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00022 
+00023  $Id$
+00024 
+00025 **************************************************************************************/
+00026 
+00027 #ifndef _GDT_H
+00028 #define _GDT_H
+00029 
+00030 /* Descriptor Definitions */
+00031 #define dCall 0x0C00 /* 386 Call Gate                */
+00032 #define dCode 0x1800 /* Code Segment                 */
+00033 #define dData 0x1000 /* Data Segment                 */
+00034 #define dInt  0x0E00 /* 386 Interrupt Gate           */
+00035 #define dLdt  0x200  /* Local Descriptor Table (LDT) */
+00036 #define dTask 0x500  /* Task gate                    */
+00037 #define dTrap 0x0F00 /* 386 Trap Gate                */
+00038 #define dTss  0x900  /* Task State Segment (TSS)     */
+00039 
+00040 /* Descriptor Options */
+00041 #define dDpl3     0x6000 /* DPL3 or mask for DPL             */
+00042 #define dDpl2     0x4000 /* DPL2 or mask for DPL             */
+00043 #define dDpl1     0x2000 /* DPL1 or mask for DPL             */
+00044 #define dPresent  0x8000 /* Present                          */
+00045 #define dNpresent 0x8000 /* Not Present                      */
+00046 #define dAcc      0x100  /* Accessed (Data or Code)          */
+00047 #define dWrite    0x200  /* Writable (Data segments only)    */
+00048 #define dRead     0x200  /* Readable (Code segments only)    */
+00049 #define dBusy     0xB00  /* Busy (TSS only)    was 200       */
+00050 #define dEexdown  0x400  /* Expand down (Data segments only) */
+00051 #define dConform  0x400  /* Conforming (Code segments only)  */
+00052 #define dBig      0x40   /* Default to 32 bit mode           */
+00053 #define dBiglim   0x80   /* Limit is in 4K units             */
+00054 
+00055 /* GDT Descriptor */
+00056 struct gdtDescriptor {
+00057   unsigned short limitLow;      /* Limit 0..15    */
+00058   unsigned short baseLow;       /* Base  0..15    */
+00059   unsigned char  baseMed;       /* Base  16..23   */
+00060   unsigned char  access;        /* Access Byte    */
+00061   unsigned int   limitHigh:4;   /* Limit 16..19   */
+00062   unsigned int   granularity:4; /* Granularity    */
+00063   unsigned char  baseHigh;      /* Base 24..31    */
+00064   } __attribute__ ((packed));
+00065 
+00066 struct gdtGate {
+00067   unsigned short offsetLow;  /* Offset 0..15  */
+00068   unsigned short selector;   /* Selector      */
+00069   unsigned short access;     /* Access Flags  */
+00070   unsigned short offsetHigh; /* Offset 16..31 */
+00071   } __attribute__ ((packed));
+00072 
+00073 union descriptorTableunion {
+00074   struct gdtDescriptor descriptor; /* Normal descriptor */
+00075   struct gdtGate gate;             /* Gate descriptor   */
+00076   unsigned long dummy;             /* Any other info    */
+00077   };
+00078 
+00079 
+00080 #define descriptorTable(name,length) union descriptorTableunion name[length] =
+00081 #define standardDescriptor(base, limit, control) {descriptor: {(limit & 0xffff), (base & 0xffff), ((base >> 16) & 0xff), \
+00082                                                ((control+dPresent) >> 8), (limit >> 16), \
+00083                                                ((control & 0xff) >> 4), (base >> 24)}}
+00084 #define gateDescriptor(offset, selector, control) {gate: {(offset & 0xffff), selector, \
+00085                                                      (control+dPresent), (offset >> 16) }}
+00086 
+00087 #endif
+00088 
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/hd_8h-source.html b/doc/doxygen/html/hd_8h-source.html new file mode 100644 index 0000000..f08c333 --- /dev/null +++ b/doc/doxygen/html/hd_8h-source.html @@ -0,0 +1,59 @@ + + +Ubixos: hd.h Source File + + + +

hd.h

00001 #include <ubixfs/ubixfs.h>
+00002 
+00003 #ifndef _HD_H
+00004 #define _HD_H
+00005 
+00006 #define hdData     0x0
+00007 #define hdError    0x1
+00008 #define hdSecCount 0x2
+00009 #define hdSecNum   0x3
+00010 #define hdCylLow   0x4
+00011 #define hdCylHi    0x5
+00012 #define hdHead     0x6
+00013 #define hdStat     0x7
+00014 #define hdCmd      0x7
+00015 
+00016 
+00017 struct driveInfo {
+00018   struct driveDiskLabel *diskLabel;
+00019   char hdSector[512];
+00020   char hdEnable;
+00021   char hdDev;
+00022   char hdFlags;
+00023   char hdShift;
+00024   long hdMask;
+00025   long hdMulti;
+00026   long hdPort;
+00027   long hdSize;
+00028   long hdCalc;
+00029   };
+00030 
+00031 void initHardDisk();
+00032 void hdWrite(struct driveInfo *hdd,void *,uInt32,uInt32);
+00033 void hdRead(struct driveInfo *hdd,void *,uInt32,uInt32);
+00034 int hdReset();
+00035 int hdIoctl();
+00036 int hdStart();
+00037 int hdStop();
+00038 int hdStandby();
+00039 int hdInit(struct deviceNode *dev);
+00040 
+00041 extern struct driveInfo *hdd0;
+00042 extern struct driveInfo *hdd1;
+00043 extern struct driveInfo *hdd2;
+00044 extern struct driveInfo *hdd3;
+00045 
+00046 #endif
+00047 
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/idletask_8h-source.html b/doc/doxygen/html/idletask_8h-source.html new file mode 100644 index 0000000..aa4b856 --- /dev/null +++ b/doc/doxygen/html/idletask_8h-source.html @@ -0,0 +1,44 @@ + + +Ubixos: idletask.h Source File + + + +

idletask.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _IDLETASK_H
+00025 #define _IDLETASK_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 void idleTask();
+00030 
+00031 #endif
+00032 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/idt_8h-source.html b/doc/doxygen/html/idt_8h-source.html new file mode 100644 index 0000000..958900c --- /dev/null +++ b/doc/doxygen/html/idt_8h-source.html @@ -0,0 +1,69 @@ + + +Ubixos: idt.h Source File + + + +

idt.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _IDT_H
+00025 #define _IDT_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <sys/gdt.h>
+00029 
+00030 #define EFLAG_TF         0x100
+00031 #define EFLAG_IF         0x200
+00032 #define EFLAG_IOPL3      0x3000
+00033 #define EFLAG_VM         0x20000
+00034 
+00035 int idtInit();
+00036 void setVector(void *handler, unsigned char interrupt, unsigned short controlMajor);
+00037 void setTaskVector(uInt8 interrupt,uInt16 controlMajor,uInt8 selector);
+00038 void intNull();
+00039 
+00040 void _int0();
+00041 void _int1();
+00042 void _int2();
+00043 void _int3();
+00044 void _int4();
+00045 void _int5();
+00046 void _int6();
+00047 void _int7();
+00048 void _int8();
+00049 void _int9();
+00050 void _int10();
+00051 void _int11();
+00052 void _int12();
+00053 void _int13();
+00054 void timerInt();
+00055 
+00056 #endif
+00057 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/include_2net_2arch_2lib_8h-source.html b/doc/doxygen/html/include_2net_2arch_2lib_8h-source.html new file mode 100644 index 0000000..b78c219 --- /dev/null +++ b/doc/doxygen/html/include_2net_2arch_2lib_8h-source.html @@ -0,0 +1,59 @@ + + +Ubixos: lib.h Source File + + + +

lib.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_LIB_H__
+00036 #define __ARCH_LIB_H__
+00037 
+00038 #ifndef _STRING_H_
+00039 #ifndef _STRING_H
+00040 int strlen(const char *str);
+00041 int strncmp(const char *str1, const char *str2, int len);
+00042 void bcopy(const void *src, void *dest, int len);
+00043 void bzero(void *data, int n);
+00044 #endif /* _STRING_H */
+00045 #endif /* _STRING_H_ */
+00046 
+00047 #endif /* __ARCH_LIB_H__ */
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/include_2ubixfs_2ubixfs_8h-source.html b/doc/doxygen/html/include_2ubixfs_2ubixfs_8h-source.html new file mode 100644 index 0000000..10ce25f --- /dev/null +++ b/doc/doxygen/html/include_2ubixfs_2ubixfs_8h-source.html @@ -0,0 +1,137 @@ + + +Ubixos: ubixfs.h Source File + + + +

ubixfs.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _UBIXFS_H
+00025 #define _UBIXFS_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <sys/device.h>
+00029 #include <vfs/file.h>
+00030 
+00031 #define UBIXDISKMAGIC     ((uInt32)0x45) /* The disk magic number */
+00032 #define MAXPARTITIONS     4
+00033 #define blockSize         8
+00034 #define blockByteSize     blockSize*512
+00035 
+00036 #define EOBC              -1
+00037 
+00038 
+00039 #define typeFile      1
+00040 #define typeContainer 2
+00041 #define typeDirectory 4
+00042 #define typeDeleted   8
+00043 
+00044 //Partition Information
+00045 struct ubixDiskLabel {
+00046   uInt32 magicNum;
+00047   uInt32 magicNum2;
+00048   uInt16 driveType;
+00049   uInt16 numPartitions;
+00050   struct  drivePartitions {  //the partition table
+00051     uInt32 pSize;            //number of sectors in partition
+00052     uInt32 pOffset;          //starting sector
+00053     uInt32 pFsSize;          //filesystem basic fragment size
+00054     uInt32 pBatSize;         //BAT size
+00055     uInt8  pFsType;          //filesystem type, see below
+00056     uInt8 pFrag;            //filesystem fragments per block
+00057     } partitions[MAXPARTITIONS];
+00058   };
+00059 
+00060 struct partitionInformation {
+00061   uInt32 size;                 //Size In Sectors
+00062   uInt32 startSector;          //Base Sector Of Partition
+00063   uInt32 blockAllocationTable; //Base Sector Of BAT
+00064   uInt32 rootDirectory;        //Base Sector Of Root Directory
+00065   };
+00066 
+00067 //Block Allocation Table Entry
+00068 struct blockAllocationTableEntry {
+00069   long attributes; //Block Attributes
+00070   long realSector; //Real Sector  
+00071   long nextBlock;  //Sector Of Next Block
+00072   long reserved;   //Reserved
+00073   };
+00074 
+00075 //UbixFS Directory Entry
+00076 struct directoryEntry {
+00077   uInt32  startCluster;   //Starting Cluster Of File
+00078   uInt32  size;           //Size Of File
+00079   uInt32  creationDate;  //Date Created
+00080   uInt32  lastModified;  //Date Last Modified
+00081   uInt32  uid;           //UID Of Owner
+00082   uInt32  gid;           //GID Of Owner
+00083   uShort attributes;    //Files Attributes
+00084   uShort permissions;   //Files Permissions
+00085   char   fileName[256]; //File Name
+00086   };
+00087 
+00088 struct bootSect {
+00089   uChar jmp[4];
+00090   uChar id[6];
+00091   uShort version;
+00092   uShort tmp;
+00093   uShort fsStart;
+00094   uShort tmp2;
+00095   uInt32 krnl_start;
+00096   uInt BytesPerSector;
+00097   uInt SectersPerTrack;
+00098   uInt TotalHeads;
+00099   uInt32 TotalSectors;
+00100   uChar code[479];
+00101   };  
+00102 
+00103 struct ubixFsInfo {
+00104   struct blockAllocationTableEntry *blockAllocationTable;
+00105   uInt32 batEntries;
+00106   };
+00107 
+00108 int readFile(char *file);
+00109 int writeFileByte(int ch,fileDescriptor *fd,long offset);
+00110 int openFileUbixFS(char *file,fileDescriptor *fd);
+00111 int mkDirUbixFS(char *dir,fileDescriptor *fd);
+00112 int getFreeBlocks(int count,fileDescriptor *fd);
+00113 //extern struct ubixDiskLabel *diskLabel;
+00114 
+00115 //Good Functions
+00116 void initUbixFS(struct mountPoints *mp);
+00117 int enableUbixFS();
+00118 int readUbixFS(fileDescriptor *fd,char *data,long offset,long size);
+00119 int writeUbixFS(fileDescriptor *fd,char *data,long offset,long size);
+00120 void syncBat(struct mountPoints *mp);
+00121 int freeBlocks(int block,fileDescriptor *fd);
+00122 int addDirEntry(struct directoryEntry *dir,fileDescriptor *fd);
+00123 void ubixFSUnlink(char *path,struct mountPoints *mp);
+00124 
+00125 #endif
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/index.html b/doc/doxygen/html/index.html new file mode 100644 index 0000000..e05dc4a --- /dev/null +++ b/doc/doxygen/html/index.html @@ -0,0 +1,16 @@ + + +Ubixos: Main Page + + + +

Ubixos Documentation

+

+

+
Generated on Wed Apr 28 17:49:27 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/init_8h-source.html b/doc/doxygen/html/init_8h-source.html new file mode 100644 index 0000000..321a851 --- /dev/null +++ b/doc/doxygen/html/init_8h-source.html @@ -0,0 +1,56 @@ + + +Ubixos: init.h Source File + + + +

init.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_INIT_H__
+00036 #define __ARCH_INIT_H__
+00037 
+00038 #define TCPIP_INIT_DONE(arg) sys_sem_signal(*(sys_sem_t *)arg)
+00039 
+00040 #endif /* __ARCH_INIT_H__ */
+00041 
+00042 
+00043 
+00044 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/io_8h-source.html b/doc/doxygen/html/io_8h-source.html new file mode 100644 index 0000000..f5dc2f6 --- /dev/null +++ b/doc/doxygen/html/io_8h-source.html @@ -0,0 +1,48 @@ + + +Ubixos: io.h Source File + + + +

io.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _IO_H
+00025 #define _IO_H
+00026 
+00027 inline unsigned char inportByte(unsigned int);
+00028 inline unsigned short inportWord(unsigned int);
+00029 inline unsigned long  inportDWord(unsigned int);
+00030 inline void outportByte(unsigned int,unsigned char);
+00031 inline void outportByteP(unsigned int port,unsigned char value);
+00032 inline void outportWord(unsigned int,unsigned short);
+00033 inline void outportDWord(unsigned int port,unsigned long value);
+00034 
+00035 #endif
+00036 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv4_2icmp_8h-source.html b/doc/doxygen/html/ipv4_2icmp_8h-source.html new file mode 100644 index 0000000..94e52e0 --- /dev/null +++ b/doc/doxygen/html/ipv4_2icmp_8h-source.html @@ -0,0 +1,116 @@ + + +Ubixos: icmp.h Source File + + + +

icmp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_ICMP_H__
+00036 #define __LWIP_ICMP_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #include "net/opt.h"
+00041 #include "net/pbuf.h"
+00042 
+00043 #include "net/netif.h"
+00044 
+00045 #define ICMP_ER 0      /* echo reply */
+00046 #define ICMP_DUR 3     /* destination unreachable */
+00047 #define ICMP_SQ 4      /* source quench */
+00048 #define ICMP_RD 5      /* redirect */
+00049 #define ICMP_ECHO 8    /* echo */
+00050 #define ICMP_TE 11     /* time exceeded */
+00051 #define ICMP_PP 12     /* parameter problem */
+00052 #define ICMP_TS 13     /* timestamp */
+00053 #define ICMP_TSR 14    /* timestamp reply */
+00054 #define ICMP_IRQ 15    /* information request */
+00055 #define ICMP_IR 16     /* information reply */
+00056 
+00057 enum icmp_dur_type {
+00058   ICMP_DUR_NET = 0,    /* net unreachable */
+00059   ICMP_DUR_HOST = 1,   /* host unreachable */
+00060   ICMP_DUR_PROTO = 2,  /* protocol unreachable */
+00061   ICMP_DUR_PORT = 3,   /* port unreachable */
+00062   ICMP_DUR_FRAG = 4,   /* fragmentation needed and DF set */
+00063   ICMP_DUR_SR = 5      /* source route failed */
+00064 };
+00065 
+00066 enum icmp_te_type {
+00067   ICMP_TE_TTL = 0,     /* time to live exceeded in transit */
+00068   ICMP_TE_FRAG = 1     /* fragment reassembly time exceeded */
+00069 };
+00070 
+00071 void icmp_input(struct pbuf *p, struct netif *inp);
+00072 
+00073 void icmp_dest_unreach(struct pbuf *p, enum icmp_dur_type t);
+00074 void icmp_time_exceeded(struct pbuf *p, enum icmp_te_type t);
+00075 
+00076 struct icmp_echo_hdr {
+00077   PACK_STRUCT_FIELD(uInt16 _type_code);
+00078   PACK_STRUCT_FIELD(uInt16 chksum);
+00079   PACK_STRUCT_FIELD(uInt16 id);
+00080   PACK_STRUCT_FIELD(uInt16 seqno);
+00081 } PACK_STRUCT_STRUCT;
+00082 
+00083 
+00084 
+00085 struct icmp_dur_hdr {
+00086   PACK_STRUCT_FIELD(uInt16 _type_code);
+00087   PACK_STRUCT_FIELD(uInt16 chksum);
+00088   PACK_STRUCT_FIELD(uInt32 unused);
+00089 } PACK_STRUCT_STRUCT;
+00090 
+00091 struct icmp_te_hdr {
+00092   PACK_STRUCT_FIELD(uInt16 _type_code);
+00093   PACK_STRUCT_FIELD(uInt16 chksum);
+00094   PACK_STRUCT_FIELD(uInt32 unused);
+00095 } PACK_STRUCT_STRUCT;
+00096 
+00097 #define ICMPH_TYPE(hdr) (NTOHS((hdr)->_type_code) >> 8)
+00098 #define ICMPH_CODE(hdr) (NTOHS((hdr)->_type_code) & 0xff)
+00099 
+00100 #define ICMPH_TYPE_SET(hdr, type) ((hdr)->_type_code = HTONS(ICMPH_CODE(hdr) | ((type) << 8)))
+00101 #define ICMPH_CODE_SET(hdr, code) ((hdr)->_type_code = HTONS((code) | (ICMPH_TYPE(hdr) << 8)))
+00102 
+00103 #endif /* __LWIP_ICMP_H__ */
+00104           
+

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv4_2inet_8h-source.html b/doc/doxygen/html/ipv4_2inet_8h-source.html new file mode 100644 index 0000000..02bde92 --- /dev/null +++ b/doc/doxygen/html/ipv4_2inet_8h-source.html @@ -0,0 +1,134 @@ + + +Ubixos: inet.h Source File + + + +

inet.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_INET_H__
+00036 #define __LWIP_INET_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #include "net/opt.h"
+00041 #include "net/pbuf.h"
+00042 #include "net/ipv4/ip_addr.h"
+00043 
+00044 uInt16 inet_chksum(void *dataptr, uInt16 len);
+00045 uInt16 inet_chksum_pbuf(struct pbuf *p);
+00046 uInt16 inet_chksum_pseudo(struct pbuf *p,
+00047                          struct ip_addr *src, struct ip_addr *dest,
+00048                          uInt8 proto, uInt16 proto_len);
+00049 
+00050 #ifdef HTONS
+00051 #undef HTONS
+00052 #endif /* HTONS */
+00053 #ifdef NTOHS
+00054 #undef NTOHS
+00055 #endif /* NTOHS */
+00056 #ifdef HTONL
+00057 #undef HTONL
+00058 #endif /* HTONL */
+00059 #ifdef NTOHL
+00060 #undef NTOHL
+00061 #endif /* NTOHL */
+00062 
+00063 #ifndef HTONS
+00064 #   if BYTE_ORDER == BIG_ENDIAN
+00065 #      define HTONS(n) (n)
+00066 #      define htons(n) HTONS(n)
+00067 #   else /* BYTE_ORDER == BIG_ENDIAN */
+00068 #      define HTONS(n) (((((uInt16)(n) & 0xff)) << 8) | (((uInt16)(n) & 0xff00) >> 8))
+00069 #   endif /* BYTE_ORDER == BIG_ENDIAN */
+00070 #endif /* HTONS */
+00071 
+00072 #ifdef NTOHS
+00073 #undef NTOHS
+00074 #endif /* NTOHS */
+00075 
+00076 #ifdef ntohs
+00077 #undef ntohs
+00078 #endif /* ntohs */
+00079 
+00080 #define NTOHS HTONS
+00081 #define ntohs htons
+00082 
+00083 
+00084 #ifndef HTONL
+00085 #   if BYTE_ORDER == BIG_ENDIAN
+00086 #      define HTONL(n) (n)
+00087 #      define htonl(n) HTONL(n)
+00088 #   else /* BYTE_ORDER == BIG_ENDIAN */
+00089 #      define HTONL(n) (((((uInt32)(n) & 0xff)) << 24) | \
+00090                         ((((uInt32)(n) & 0xff00)) << 8) | \
+00091                         ((((uInt32)(n) & 0xff0000)) >> 8) | \
+00092                         ((((uInt32)(n) & 0xff000000)) >> 24))
+00093 #   endif /* BYTE_ORDER == BIG_ENDIAN */
+00094 #endif /* HTONL */
+00095 
+00096 #ifdef ntohl
+00097 #undef ntohl
+00098 #endif /* ntohl */
+00099 
+00100 #ifdef NTOHL
+00101 #undef NTOHL
+00102 #endif /* NTOHL */
+00103 
+00104 #define NTOHL HTONL
+00105 #define ntohl htonl
+00106 
+00107 #ifndef _MACHINE_ENDIAN_H_
+00108 #ifndef _NETINET_IN_H
+00109 #ifndef _LINUX_BYTEORDER_GENERIC_H
+00110 
+00111 #if BYTE_ORDER == LITTLE_ENDIAN
+00112 uInt16 htons(uInt16 n);
+00113 uInt32 htonl(uInt32 n);
+00114 #else
+00115 #endif /* BYTE_ORDER == LITTLE_ENDIAN */
+00116 
+00117 #endif /* _LINUX_BYTEORDER_GENERIC_H */
+00118 #endif /* _NETINET_IN_H */
+00119 #endif /* _MACHINE_ENDIAN_H_ */
+00120 
+00121 #endif /* __LWIP_INET_H__ */
+00122 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv4_2ip_8h-source.html b/doc/doxygen/html/ipv4_2ip_8h-source.html new file mode 100644 index 0000000..6668cdb --- /dev/null +++ b/doc/doxygen/html/ipv4_2ip_8h-source.html @@ -0,0 +1,132 @@ + + +Ubixos: ip.h Source File + + + +

ip.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_IP_H__
+00036 #define __LWIP_IP_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #include "net/def.h"
+00041 #include "net/pbuf.h"
+00042 #include "net/ipv4/ip_addr.h"
+00043 #include "net/netif.h"
+00044 
+00045 #include "net/err.h"
+00046 
+00047 void ip_init(void);
+00048 uInt8 ip_lookup(void *header, struct netif *inp);
+00049 struct netif *ip_route(struct ip_addr *dest);
+00050 err_t ip_input(struct pbuf *p, struct netif *inp);
+00051 err_t ip_output(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest,
+00052                 uInt8 ttl, uInt8 proto);
+00053 err_t ip_output_if(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest,
+00054                    uInt8 ttl, uInt8 proto,
+00055                    struct netif *netif);
+00056 
+00057 #define IP_HLEN 20
+00058 
+00059 #define IP_PROTO_ICMP 1
+00060 #define IP_PROTO_UDP 17
+00061 #define IP_PROTO_UDPLITE 170
+00062 #define IP_PROTO_TCP 6
+00063 
+00064 /* This is passed as the destination address to ip_output_if (not
+00065    to ip_output), meaning that an IP header already is constructed
+00066    in the pbuf. This is used when TCP retransmits. */
+00067 #ifdef IP_HDRINCL
+00068 #undef IP_HDRINCL
+00069 #endif /* IP_HDRINCL */
+00070 #define IP_HDRINCL  NULL
+00071 
+00072 struct ip_hdr {
+00073   /* version / header length / type of service */
+00074   PACK_STRUCT_FIELD(uInt16 _v_hl_tos);
+00075   /* total length */
+00076   PACK_STRUCT_FIELD(uInt16 _len);
+00077   /* identification */
+00078   PACK_STRUCT_FIELD(uInt16 _id);
+00079   /* fragment offset field */
+00080   PACK_STRUCT_FIELD(uInt16 _offset);
+00081 #define IP_RF 0x8000        /* reserved fragment flag */
+00082 #define IP_DF 0x4000        /* dont fragment flag */
+00083 #define IP_MF 0x2000        /* more fragments flag */
+00084 #define IP_OFFMASK 0x1fff   /* mask for fragmenting bits */
+00085   /* time to live / protocol*/
+00086   PACK_STRUCT_FIELD(uInt16 _ttl_proto);
+00087   /* checksum */
+00088   PACK_STRUCT_FIELD(uInt16 _chksum);
+00089   /* source and destination IP addresses */
+00090   PACK_STRUCT_FIELD(struct ip_addr src);
+00091   PACK_STRUCT_FIELD(struct ip_addr dest); 
+00092 } PACK_STRUCT_STRUCT;
+00093 
+00094 #define IPH_V(hdr)  (NTOHS((hdr)->_v_hl_tos) >> 12)
+00095 #define IPH_HL(hdr) ((NTOHS((hdr)->_v_hl_tos) >> 8) & 0x0f)
+00096 #define IPH_TOS(hdr) HTONS((NTOHS((hdr)->_v_hl_tos) & 0xff))
+00097 #define IPH_LEN(hdr) ((hdr)->_len)
+00098 #define IPH_ID(hdr) ((hdr)->_id)
+00099 #define IPH_OFFSET(hdr) ((hdr)->_offset)
+00100 #define IPH_TTL(hdr) (NTOHS((hdr)->_ttl_proto) >> 8)
+00101 #define IPH_PROTO(hdr) (NTOHS((hdr)->_ttl_proto) & 0xff)
+00102 #define IPH_CHKSUM(hdr) ((hdr)->_chksum)
+00103 
+00104 #define IPH_VHLTOS_SET(hdr, v, hl, tos) (hdr)->_v_hl_tos = HTONS(((v) << 12) | ((hl) << 8) | (tos))
+00105 #define IPH_LEN_SET(hdr, len) (hdr)->_len = (len)
+00106 #define IPH_ID_SET(hdr, id) (hdr)->_id = (id)
+00107 #define IPH_OFFSET_SET(hdr, off) (hdr)->_offset = (off)
+00108 #define IPH_TTL_SET(hdr, ttl) (hdr)->_ttl_proto = HTONS(IPH_PROTO(hdr) | ((ttl) << 8))
+00109 #define IPH_PROTO_SET(hdr, proto) (hdr)->_ttl_proto = HTONS((proto) | (IPH_TTL(hdr) << 8))
+00110 #define IPH_CHKSUM_SET(hdr, chksum) (hdr)->_chksum = (chksum)
+00111 
+00112 
+00113 
+00114 #if IP_DEBUG
+00115 void ip_debug_print(struct pbuf *p);
+00116 #endif /* IP_DEBUG */
+00117 
+00118 #endif /* __LWIP_IP_H__ */
+00119 
+00120 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv4_2ip__addr_8h-source.html b/doc/doxygen/html/ipv4_2ip__addr_8h-source.html new file mode 100644 index 0000000..03b3cdb --- /dev/null +++ b/doc/doxygen/html/ipv4_2ip__addr_8h-source.html @@ -0,0 +1,104 @@ + + +Ubixos: ip_addr.h Source File + + + +

ip_addr.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_IP_ADDR_H__
+00036 #define __LWIP_IP_ADDR_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #define IP_ADDR_ANY 0
+00041 
+00042 #define IP_ADDR_BROADCAST (&ip_addr_broadcast)
+00043 
+00044 PACK_STRUCT_BEGIN
+00045 struct ip_addr {
+00046   PACK_STRUCT_FIELD(uInt32 addr);
+00047 } PACK_STRUCT_STRUCT;
+00048 PACK_STRUCT_END
+00049 
+00050 extern struct ip_addr ip_addr_broadcast;
+00051 
+00052 #define IP4_ADDR(ipaddr, a,b,c,d) (ipaddr)->addr = htonl(((uInt32)(a & 0xff) << 24) | ((uInt32)(b & 0xff) << 16) | \
+00053                                                          ((uInt32)(c & 0xff) << 8) | (uInt32)(d & 0xff))
+00054 
+00055 #define ip_addr_set(dest, src) (dest)->addr = \
+00056                                ((src) == IP_ADDR_ANY? IP_ADDR_ANY:\
+00057                                 ((struct ip_addr *)src)->addr)
+00058 #define ip_addr_maskcmp(addr1, addr2, mask) (((addr1)->addr & \
+00059                                               (mask)->addr) == \
+00060                                              ((addr2)->addr & \
+00061                                               (mask)->addr))
+00062 #define ip_addr_cmp(addr1, addr2) ((addr1)->addr == (addr2)->addr)
+00063 
+00064 #define ip_addr_isany(addr1) ((addr1) == NULL || (addr1)->addr == 0)
+00065 
+00066 #define ip_addr_isbroadcast(addr1, mask) (((((addr1)->addr) & ~((mask)->addr)) == \
+00067                                          (0xffffffff & ~((mask)->addr))) || \
+00068                                          ((addr1)->addr == 0xffffffff) || \
+00069                                          ((addr1)->addr == 0x00000000))
+00070 
+00071 
+00072 #define ip_addr_ismulticast(addr1) (((addr1)->addr & ntohl(0xf0000000)) == ntohl(0xe0000000))
+00073                                    
+00074 
+00075 #define ip_addr_debug_print(ipaddr) kprintf("%d.%d.%d.%d", \
+00076                     (uInt8)(ntohl((ipaddr)->addr) >> 24) & 0xff, \
+00077                     (uInt8)(ntohl((ipaddr)->addr) >> 16) & 0xff, \
+00078                     (uInt8)(ntohl((ipaddr)->addr) >> 8) & 0xff, \
+00079                     (uInt8)ntohl((ipaddr)->addr) & 0xff)
+00080 
+00081 
+00082 #define ip4_addr1(ipaddr) ((uInt8)(ntohl((ipaddr)->addr) >> 24) & 0xff)
+00083 #define ip4_addr2(ipaddr) ((uInt8)(ntohl((ipaddr)->addr) >> 16) & 0xff)
+00084 #define ip4_addr3(ipaddr) ((uInt8)(ntohl((ipaddr)->addr) >> 8) & 0xff)
+00085 #define ip4_addr4(ipaddr) ((uInt8)(ntohl((ipaddr)->addr)) & 0xff)
+00086 #endif /* __LWIP_IP_ADDR_H__ */
+00087 
+00088 
+00089 
+00090 
+00091 
+00092 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv6_2icmp_8h-source.html b/doc/doxygen/html/ipv6_2icmp_8h-source.html new file mode 100644 index 0000000..6c7ff97 --- /dev/null +++ b/doc/doxygen/html/ipv6_2icmp_8h-source.html @@ -0,0 +1,105 @@ + + +Ubixos: icmp.h Source File + + + +

icmp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_ICMP_H__
+00036 #define __LWIP_ICMP_H__
+00037 
+00038 #include "lwip/arch.h"
+00039 
+00040 #include "lwip/opt.h"
+00041 #include "lwip/pbuf.h"
+00042 
+00043 #include "lwip/netif.h"
+00044 
+00045 #define ICMP6_DUR  1
+00046 #define ICMP6_TE   3
+00047 #define ICMP6_ECHO 128    /* echo */
+00048 #define ICMP6_ER   129      /* echo reply */
+00049 
+00050 
+00051 enum icmp_dur_type {
+00052   ICMP_DUR_NET = 0,    /* net unreachable */
+00053   ICMP_DUR_HOST = 1,   /* host unreachable */
+00054   ICMP_DUR_PROTO = 2,  /* protocol unreachable */
+00055   ICMP_DUR_PORT = 3,   /* port unreachable */
+00056   ICMP_DUR_FRAG = 4,   /* fragmentation needed and DF set */
+00057   ICMP_DUR_SR = 5      /* source route failed */
+00058 };
+00059 
+00060 enum icmp_te_type {
+00061   ICMP_TE_TTL = 0,     /* time to live exceeded in transit */
+00062   ICMP_TE_FRAG = 1     /* fragment reassembly time exceeded */
+00063 };
+00064 
+00065 void icmp_input(struct pbuf *p, struct netif *inp);
+00066 
+00067 void icmp_dest_unreach(struct pbuf *p, enum icmp_dur_type t);
+00068 void icmp_time_exceeded(struct pbuf *p, enum icmp_te_type t);
+00069 
+00070 struct icmp_echo_hdr {
+00071   u8_t type;
+00072   u8_t icode;
+00073   u16_t chksum;
+00074   u16_t id;
+00075   u16_t seqno;
+00076 };
+00077 
+00078 struct icmp_dur_hdr {
+00079   u8_t type;
+00080   u8_t icode;
+00081   u16_t chksum;
+00082   u32_t unused;
+00083 };
+00084 
+00085 struct icmp_te_hdr {
+00086   u8_t type;
+00087   u8_t icode;
+00088   u16_t chksum;
+00089   u32_t unused;
+00090 };
+00091 
+00092 #endif /* __LWIP_ICMP_H__ */
+00093           
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv6_2inet_8h-source.html b/doc/doxygen/html/ipv6_2inet_8h-source.html new file mode 100644 index 0000000..4685890 --- /dev/null +++ b/doc/doxygen/html/ipv6_2inet_8h-source.html @@ -0,0 +1,75 @@ + + +Ubixos: inet.h Source File + + + +

inet.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_INET_H__
+00036 #define __LWIP_INET_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #include "net/opt.h"
+00041 #include "net/pbuf.h"
+00042 #include "net/ipv6/ip_addr.h"
+00043 
+00044 u16_t inet_chksum(void *data, u16_t len);
+00045 u16_t inet_chksum_pbuf(struct pbuf *p);
+00046 u16_t inet_chksum_pseudo(struct pbuf *p,
+00047                          struct ip_addr *src, struct ip_addr *dest,
+00048                          u8_t proto, u32_t proto_len);
+00049 
+00050 
+00051 #ifndef _MACHINE_ENDIAN_H_
+00052 #ifndef _NETINET_IN_H
+00053 #ifndef _LINUX_BYTEORDER_GENERIC_H
+00054 u16_t htons(u16_t n);
+00055 u16_t ntohs(u16_t n);
+00056 u32_t htonl(u32_t n);
+00057 u32_t ntohl(u32_t n);
+00058 #endif /* _LINUX_BYTEORDER_GENERIC_H */
+00059 #endif /* _NETINET_IN_H */
+00060 #endif /* _MACHINE_ENDIAN_H_ */
+00061 
+00062 #endif /* __LWIP_INET_H__ */
+00063 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv6_2ip_8h-source.html b/doc/doxygen/html/ipv6_2ip_8h-source.html new file mode 100644 index 0000000..1a24140 --- /dev/null +++ b/doc/doxygen/html/ipv6_2ip_8h-source.html @@ -0,0 +1,111 @@ + + +Ubixos: ip.h Source File + + + +

ip.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_IP_H__
+00036 #define __LWIP_IP_H__
+00037 
+00038 #include "lwip/debug.h"
+00039 #include "lwip/def.h"
+00040 #include "lwip/pbuf.h"
+00041 #include "lwip/ip_addr.h"
+00042 
+00043 #include "lwip/err.h"
+00044 
+00045 #define IP_HLEN 40
+00046 
+00047 #define IP_PROTO_ICMP 58
+00048 #define IP_PROTO_UDP 17
+00049 #define IP_PROTO_UDPLITE 170
+00050 #define IP_PROTO_TCP 6
+00051 
+00052 /* This is passed as the destination address to ip_output_if (not
+00053    to ip_output), meaning that an IP header already is constructed
+00054    in the pbuf. This is used when TCP retransmits. */
+00055 #ifdef IP_HDRINCL
+00056 #undef IP_HDRINCL
+00057 #endif /* IP_HDRINCL */
+00058 #define IP_HDRINCL  NULL
+00059 
+00060 
+00061 /* The IPv6 header. */
+00062 struct ip_hdr {
+00063 #if BYTE_ORDER == LITTLE_ENDIAN
+00064   u8_t tclass1:4, v:4;
+00065   u8_t flow1:4, tclass2:4;  
+00066 #else
+00067   u8_t v:4, tclass1:4;
+00068   u8_t tclass2:8, flow1:4;
+00069 #endif
+00070   u16_t flow2;
+00071   u16_t len;                /* payload length */
+00072   u8_t nexthdr;             /* next header */
+00073   u8_t hoplim;              /* hop limit (TTL) */
+00074   struct ip_addr src, dest;          /* source and destination IP addresses */
+00075 };
+00076 
+00077 void ip_init(void);
+00078 
+00079 #include "lwip/netif.h"
+00080 
+00081 struct netif *ip_route(struct ip_addr *dest);
+00082 
+00083 void ip_input(struct pbuf *p, struct netif *inp);
+00084 
+00085 /* source and destination addresses in network byte order, please */
+00086 err_t ip_output(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest,
+00087                unsigned char ttl, unsigned char proto);
+00088 
+00089 err_t ip_output_if(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest,
+00090                   unsigned char ttl, unsigned char proto,
+00091                   struct netif *netif);
+00092 
+00093 #if IP_DEBUG
+00094 void ip_debug_print(struct pbuf *p);
+00095 #endif /* IP_DEBUG */
+00096 
+00097 #endif /* __LWIP_IP_H__ */
+00098 
+00099 
+

Generated on Wed Apr 28 17:49:35 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ipv6_2ip__addr_8h-source.html b/doc/doxygen/html/ipv6_2ip__addr_8h-source.html new file mode 100644 index 0000000..99ed6e8 --- /dev/null +++ b/doc/doxygen/html/ipv6_2ip__addr_8h-source.html @@ -0,0 +1,74 @@ + + +Ubixos: ip_addr.h Source File + + + +

ip_addr.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_IP_ADDR_H__
+00036 #define __LWIP_IP_ADDR_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #define IP_ADDR_ANY 0
+00041 
+00042 struct ip_addr {
+00043   u32_t addr[4];
+00044 };
+00045 
+00046 #define IP6_ADDR(ipaddr, a,b,c,d,e,f,g,h) do { (ipaddr)->addr[0] = htonl((u32_t)((a & 0xffff) << 16) | (b & 0xffff)); \
+00047                                                (ipaddr)->addr[1] = htonl(((c & 0xffff) << 16) | (d & 0xffff)); \
+00048                                                (ipaddr)->addr[2] = htonl(((e & 0xffff) << 16) | (f & 0xffff)); \
+00049                                                (ipaddr)->addr[3] = htonl(((g & 0xffff) << 16) | (h & 0xffff)); } while(0)
+00050 
+00051 int ip_addr_maskcmp(struct ip_addr *addr1, struct ip_addr *addr2,
+00052                     struct ip_addr *mask);
+00053 int ip_addr_cmp(struct ip_addr *addr1, struct ip_addr *addr2);
+00054 void ip_addr_set(struct ip_addr *dest, struct ip_addr *src);
+00055 int ip_addr_isany(struct ip_addr *addr);
+00056 
+00057 
+00058 #if IP_DEBUG
+00059 void ip_addr_debug_print(struct ip_addr *addr);
+00060 #endif /* IP_DEBUG */
+00061 
+00062 #endif /* __LWIP_IP_ADDR_H__ */
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/kmalloc_8h-source.html b/doc/doxygen/html/kmalloc_8h-source.html new file mode 100644 index 0000000..488c6af --- /dev/null +++ b/doc/doxygen/html/kmalloc_8h-source.html @@ -0,0 +1,77 @@ + + +Ubixos: kmalloc.h Source File + + + +

kmalloc.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _KMALLOC_H
+00025 #define _KMALLOC_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #ifdef __cplusplus
+00030 extern "C" {
+00031 #endif
+00032 
+00033 #define sysMalloc  -2
+00034 #define sysID      -2
+00035 
+00036 struct memDescriptor {
+00037   struct memDescriptor *prev;        //4
+00038   struct memDescriptor *next;        //4
+00039   void                 *baseAddr;    //4
+00040   uInt32               limit;        //4
+00041   uInt8                status;       //1
+00042   pidType              pid;          //4
+00043   char                 reserved[11]; //11
+00044   };
+00045 
+00046 void kfree(void *baseAddr);
+00047 void *kmalloc(uInt32 len,pidType pid);
+00048 void initMalloc(pidType pid);
+00049 void *getEmptyDesc();
+00050 void insertFreeDesc(struct memDescriptor *freeDesc);
+00051 void mergeMemBlocks();
+00052 void kfreeProcess(pidType pid);
+00053 
+00054 extern struct memDescriptor *kernDesc;
+00055 extern struct memDescriptor *freeKernDesc;
+00056 extern struct memDescriptor *emptyKernDesc;
+00057 
+00058 extern int mallocLock;
+00059 
+00060 #ifdef __cplusplus
+00061 }
+00062 #endif
+00063 
+00064 #endif
+00065 
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/kpanic_8h-source.html b/doc/doxygen/html/kpanic_8h-source.html new file mode 100644 index 0000000..f80e2d2 --- /dev/null +++ b/doc/doxygen/html/kpanic_8h-source.html @@ -0,0 +1,46 @@ + + +Ubixos: kpanic.h Source File + + + +

kpanic.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _KPANIC_H
+00025 #define _KPANIC_H
+00026 
+00027 void kpanic(const char *fmt, ...);
+00028 
+00029 #endif
+00030 
+00031 /***
+00032  END
+00033  ***/
+00034 
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/kprint_8h-source.html b/doc/doxygen/html/kprint_8h-source.html new file mode 100644 index 0000000..176b0c6 --- /dev/null +++ b/doc/doxygen/html/kprint_8h-source.html @@ -0,0 +1,43 @@ + + +Ubixos: kprint.h Source File + + + +

kprint.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _KPRINT_H
+00025 #define _KPRINT_H
+00026 
+00027 int kprintf(const char *fmt, ...);
+00028 
+00029 extern int printOff;
+00030 
+00031 #endif
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/kprintf_8h-source.html b/doc/doxygen/html/kprintf_8h-source.html new file mode 100644 index 0000000..ef5e096 --- /dev/null +++ b/doc/doxygen/html/kprintf_8h-source.html @@ -0,0 +1,46 @@ + + +Ubixos: kprintf.h Source File + + + +

kprintf.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _KPRINTF_H
+00025 #define _KPRINTF_H
+00026 
+00027 int kprintf(const char *fmt, ...);
+00028 int ogPrintf(char *);
+00029 
+00030 extern int printOff;
+00031 extern int ogprintOff;
+00032 
+00033 #endif
+00034 
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ld_8h-source.html b/doc/doxygen/html/ld_8h-source.html new file mode 100644 index 0000000..b82088e --- /dev/null +++ b/doc/doxygen/html/ld_8h-source.html @@ -0,0 +1,48 @@ + + +Ubixos: ld.h Source File + + + +

ld.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _LD_H
+00025 #define _LD_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 void ld(int,int);
+00030 
+00031 #endif
+00032 
+00033 /***
+00034  END
+00035  ***/
+00036 
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/lib_2string_8h-source.html b/doc/doxygen/html/lib_2string_8h-source.html new file mode 100644 index 0000000..a880131 --- /dev/null +++ b/doc/doxygen/html/lib_2string_8h-source.html @@ -0,0 +1,61 @@ + + +Ubixos: string.h Source File + + + +

string.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _STRING_H
+00025 #define _STRING_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #ifdef __cplusplus
+00030 extern "C" {
+00031 #endif
+00032 
+00033 int kstrcmp(char *str1, char *str2);
+00034 int kstrncmp(const char * a, const char * b, size_t c);
+00035 void *kmemcpy(const void *dst, const void * src, size_t length);
+00036 void *kmemset(void * dst, int c, size_t length);
+00037 int kstrlen(const char * string);
+00038 int kmemcmp(const void * dst, const void * src, size_t length);
+00039 void kstrncpy(char * dest, const char * src, size_t size);
+00040 char *strtok(char *str, const char *sep);
+00041 char *strtok_r(char *str, const char *sep, char **last);
+00042 
+00043 int sprintf(char *buf,const char *fmt, ...);
+00044 
+00045 #ifdef __cplusplus
+00046 }
+00047 #endif
+00048   
+00049 #endif
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/libcpp_8h-source.html b/doc/doxygen/html/libcpp_8h-source.html new file mode 100644 index 0000000..bbe2621 --- /dev/null +++ b/doc/doxygen/html/libcpp_8h-source.html @@ -0,0 +1,21 @@ + + +Ubixos: libcpp.h Source File + + + +

libcpp.h

00001 #ifndef __LIBCPP_H
+00002 #define __LIBCPP_H
+00003 
+00004 void * operator new(unsigned size);
+00005 void   operator delete(void * ptr);
+00006 void * operator new[](unsigned size);
+00007 void   operator delete[](void * ptr);
+00008 
+00009 #endif
+

Generated on Wed Apr 28 17:49:36 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/list_8h-source.html b/doc/doxygen/html/list_8h-source.html new file mode 100644 index 0000000..602e9db --- /dev/null +++ b/doc/doxygen/html/list_8h-source.html @@ -0,0 +1,62 @@ + + +Ubixos: list.h Source File + + + +

list.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_LIST_H__
+00036 #define __LWIP_LIST_H__
+00037 
+00038 struct list;
+00039 
+00040 struct list *list_new(int size);
+00041 int list_push(struct list *list, void *elem);
+00042 void *list_pop(struct list *list);
+00043 int list_remove(struct list *list, void *elem);
+00044 void *list_first(struct list *list);
+00045 int list_elems(struct list *list);
+00046 void list_delete(struct list *list);
+00047 
+00048 void list_map(struct list *list, void (* func)(void *arg));
+00049 
+00050 #endif /* __LWIP_LIST_H__ */
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/lnc_8h-source.html b/doc/doxygen/html/lnc_8h-source.html new file mode 100644 index 0000000..36f4961 --- /dev/null +++ b/doc/doxygen/html/lnc_8h-source.html @@ -0,0 +1,169 @@ + + +Ubixos: lnc.h Source File + + + +

lnc.h

00001 #ifndef _LNC_H
+00002 #define _LNC_H
+00003 
+00004 #include <ubixos/types.h>
+00005 
+00006 #define NDESC(len2) (1 << len2)
+00007 #define NORMAL 0
+00008 #define MEM_SLEW 8
+00009 #define TRANSBUFSIZE 1518
+00010 #define RECVBUFSIZE 1518
+00011 #define NRDRE 3
+00012 #define NTDRE 3
+00013 #define    ETHER_ADDR_LEN          6
+00014 #define NE2100_IOSIZE  24
+00015 #define PCNET_RDP    0x10        /* Register Data Port */
+00016 #define PCNET_RAP    0x12        /* Register Address Port */
+00017 #define PCNET_RESET  0x14
+00018 #define PCNET_BDP    0x16
+00019 #define PCNET_VSW    0x18
+00020 #define NE2100          2
+00021 
+00022 /* mem_mode values */
+00023 #define DMA_FIXED       1
+00024 #define DMA_MBUF        2
+00025 #define SHMEM           4
+00026 
+00027 
+00028 /********** Chip Types **********/
+00029 #define UNKNOWN         0        /* Unknown  */
+00030 #define LANCE           1        /* Am7990   */
+00031 #define C_LANCE         2        /* Am79C90  */
+00032 #define PCnet_ISA       3        /* Am79C960 */
+00033 #define PCnet_ISAplus   4        /* Am79C961 */
+00034 #define PCnet_ISA_II    5        /* Am79C961A */
+00035 #define PCnet_32        6        /* Am79C965 */
+00036 #define PCnet_PCI       7        /* Am79C970 */
+00037 #define PCnet_PCI_II    8        /* Am79C970A */
+00038 #define PCnet_FAST      9        /* Am79C971 */
+00039 #define PCnet_FASTplus  10       /* Am79C972 */
+00040 #define PCnet_Home      11       /* Am79C978 */
+00041 
+00042 /******** AM7990 Specifics **************/
+00043 #define CSR0    0x0000
+00044 #define CSR1    1
+00045 #define CSR2    2
+00046 #define CSR3    3
+00047 #define CSR88   88
+00048 #define CSR89   89
+00049 
+00050 #define ERR     0x8000
+00051 #define BABL    0x4000
+00052 #define CERR    0x2000
+00053 #define MISS    0x1000
+00054 #define MERR    0x0800
+00055 #define RINT    0x0400
+00056 #define TINT    0x0200
+00057 #define IDON    0x0100
+00058 #define INTR    0x0080
+00059 #define INEA    0x0040
+00060 #define RXON    0x0020
+00061 #define TXON    0x0010
+00062 #define TDMD    0x0008
+00063 #define STOP    0x0004
+00064 #define STRT    0x0002
+00065 #define INIT    0x0001
+00066 
+00067 
+00068 /* CSR88-89: Chip ID masks */
+00069 #define AMD_MASK  0x003
+00070 #define PART_MASK 0xffff
+00071 #define Am79C960  0x0003
+00072 #define Am79C961  0x2260
+00073 #define Am79C961A 0x2261
+00074 #define Am79C965  0x2430
+00075 #define Am79C970  0x0242
+00076 #define Am79C970A 0x2621
+00077 #define Am79C971  0x2623
+00078 #define Am79C972  0x2624
+00079 #define Am79C973  0x2625
+00080 #define Am79C978  0x2626
+00081 
+00082 /********** Structs **********/
+00083 
+00084 
+00085 
+00086 
+00087 struct initBlock {
+00088   uInt16 mode;           /* Mode register                        */
+00089   uInt8  padr[6];        /* Ethernet address                     */
+00090   uInt8  ladrf[8];       /* Logical address filter (multicast)   */
+00091   uInt16 rdra;           /* Low order pointer to receive ring    */
+00092   uInt16 rlen;           /* High order pointer and no. rings     */
+00093   uInt16 tdra;           /* Low order pointer to transmit ring   */
+00094   uInt16 tlen;           /* High order pointer and no rings      */
+00095   };
+00096 
+00097 struct mds {
+00098   uInt16 md0;
+00099   uInt16 md1;
+00100   short  md2;
+00101   uInt16 md3;
+00102   };
+00103 
+00104 struct hostRingEntry {
+00105   struct mds *md;
+00106   union {
+00107     //struct mbuf *mbuf;
+00108     char *data;
+00109     }buff;
+00110   };
+00111 
+00112 struct arpcom {
+00113   //struct  ifnet ac_if;            /* network-visible interface */
+00114   uInt8  ac_enaddr[6];           /* ethernet hardware address */
+00115   int    ac_multicnt;            /* length of ac_multiaddrs list */
+00116   void   *ac_netgraph;           /* ng_ether(4) netgraph node info */
+00117   };
+00118 
+00119 struct nicInfo {
+00120   int ident;         /* Type of card */
+00121   int ic;            /* Type of ic, Am7990, Am79C960 etc. */
+00122   int memMode;
+00123   int iobase;
+00124   int mode;          /* Mode setting at initialization */
+00125   };
+00126 
+00127 struct lncInfo {
+00128   struct arpcom        arpcom;
+00129   struct nicInfo       nic;
+00130   struct hostRingEntry *recvRing;
+00131   struct hostRingEntry *transRings;
+00132   struct initBlock     *initBloack;
+00133   int                  rap;
+00134   int                  rdp;
+00135   int                  bdp;
+00136   int                  nrdre;
+00137   int                  ntdre;
+00138   };
+00139 
+00140 extern struct lncInfo *lnc;
+00141 
+00142 void writeCsr(struct lncInfo *lnc, uInt16 port, uInt16 val);
+00143 uInt16 readCsr(struct lncInfo *lnc, uInt16 port);
+00144 void writeBcr(struct lncInfo *lnc, uInt16 port, uInt16 val);
+00145 uInt16 readBcr(struct lncInfo *lnc, uInt16 port);
+00146 
+00147 void initLNC();
+00148 int probe(struct lncInfo *lnc);
+00149 int lanceProbe(struct lncInfo *lnc);
+00150 int lncAttach(struct lncInfo *lnc,int unit);
+00151 
+00152 
+00153 void lncInt();
+00154 void _lncInt();
+00155 
+00156 #endif
+00157 
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/loopif_8h-source.html b/doc/doxygen/html/loopif_8h-source.html new file mode 100644 index 0000000..7e2deb1 --- /dev/null +++ b/doc/doxygen/html/loopif_8h-source.html @@ -0,0 +1,54 @@ + + +Ubixos: loopif.h Source File + + + +

loopif.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __NETIF_LOOPIF_H__
+00036 #define __NETIF_LOOPIF_H__
+00037 
+00038 #include "net/netif.h"
+00039 
+00040 void loopif_init(struct netif *netif);
+00041 
+00042 #endif /* __NETIF_LOOPIF_H__ */
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/lwipopts_8h-source.html b/doc/doxygen/html/lwipopts_8h-source.html new file mode 100644 index 0000000..e17c177 --- /dev/null +++ b/doc/doxygen/html/lwipopts_8h-source.html @@ -0,0 +1,186 @@ + + +Ubixos: lwipopts.h Source File + + + +

lwipopts.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIPOPTS_H__
+00036 #define __LWIPOPTS_H__
+00037 
+00038 /* ---------- Memory options ---------- */
+00039 /* MEM_ALIGNMENT: should be set to the alignment of the CPU for which
+00040    lwIP is compiled. 4 byte alignment -> define MEM_ALIGNMENT to 4, 2
+00041    byte alignment -> define MEM_ALIGNMENT to 2. */
+00042 #define MEM_ALIGNMENT           2
+00043 
+00044 /* MEM_SIZE: the size of the heap memory. If the application will send
+00045 a lot of data that needs to be copied, this should be set high. */
+00046 #define MEM_SIZE                1000
+00047 
+00048 /* MEMP_NUM_PBUF: the number of memp struct pbufs. If the application
+00049    sends a lot of data out of ROM (or other static memory), this
+00050    should be set high. */
+00051 #define MEMP_NUM_PBUF           8
+00052 /* MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One
+00053    per active UDP "connection". */
+00054 #define MEMP_NUM_UDP_PCB        4
+00055 /* MEMP_NUM_TCP_PCB: the number of simulatenously active TCP
+00056    connections. */
+00057 #define MEMP_NUM_TCP_PCB        5
+00058 /* MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP
+00059    connections. */
+00060 #define MEMP_NUM_TCP_PCB_LISTEN 8
+00061 /* MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP
+00062    segments. */
+00063 #define MEMP_NUM_TCP_SEG        8
+00064 /* MEMP_NUM_SYS_TIMEOUT: the number of simulateously active
+00065    timeouts. */
+00066 #define MEMP_NUM_SYS_TIMEOUT    3
+00067 
+00068 
+00069 /* The following four are used only with the sequential API and can be
+00070    set to 0 if the application only will use the raw API. */
+00071 /* MEMP_NUM_NETBUF: the number of struct netbufs. */
+00072 #define MEMP_NUM_NETBUF         2
+00073 /* MEMP_NUM_NETCONN: the number of struct netconns. */
+00074 #define MEMP_NUM_NETCONN        4
+00075 /* MEMP_NUM_APIMSG: the number of struct api_msg, used for
+00076    communication between the TCP/IP stack and the sequential
+00077    programs. */
+00078 #define MEMP_NUM_API_MSG        8
+00079 /* MEMP_NUM_TCPIPMSG: the number of struct tcpip_msg, which is used
+00080    for sequential API communication and incoming packets. Used in
+00081    src/api/tcpip.c. */
+00082 #define MEMP_NUM_TCPIP_MSG      8
+00083 
+00084 /* These two control is reclaimer functions should be compiled
+00085    in. Should always be turned on (1). */
+00086 #define MEM_RECLAIM             1
+00087 #define MEMP_RECLAIM            1
+00088 
+00089 /* ---------- Pbuf options ---------- */
+00090 /* PBUF_POOL_SIZE: the number of buffers in the pbuf pool. */
+00091 #define PBUF_POOL_SIZE          6
+00092 
+00093 /* PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. */
+00094 #define PBUF_POOL_BUFSIZE       128
+00095 
+00096 /* PBUF_LINK_HLEN: the number of bytes that should be allocated for a
+00097    link level header. */
+00098 #define PBUF_LINK_HLEN          16
+00099 
+00100 /* ---------- TCP options ---------- */
+00101 #define LWIP_TCP                1
+00102 #define TCP_TTL                 255
+00103 
+00104 /* Controls if TCP should queue segments that arrive out of
+00105    order. Define to 0 if your device is low on memory. */
+00106 #define TCP_QUEUE_OOSEQ         1
+00107 
+00108 /* TCP Maximum segment size. */
+00109 #define TCP_MSS                 128
+00110 
+00111 /* TCP sender buffer space (bytes). */
+00112 #define TCP_SND_BUF             256
+00113 
+00114 /* TCP sender buffer space (pbufs). This must be at least = 2 *
+00115    TCP_SND_BUF/TCP_MSS for things to work. */
+00116 #define TCP_SND_QUEUELEN        4 * TCP_SND_BUF/TCP_MSS
+00117 
+00118 /* TCP receive window. */
+00119 #define TCP_WND                 1024
+00120 
+00121 /* Maximum number of retransmissions of data segments. */
+00122 #define TCP_MAXRTX              12
+00123 
+00124 /* Maximum number of retransmissions of SYN segments. */
+00125 #define TCP_SYNMAXRTX           4
+00126 
+00127 /* ---------- ARP options ---------- */
+00128 #define ARP_TABLE_SIZE 10
+00129 
+00130 /* ---------- IP options ---------- */
+00131 /* Define IP_FORWARD to 1 if you wish to have the ability to forward
+00132    IP packets across network interfaces. If you are going to run lwIP
+00133    on a device with only one network interface, define this to 0. */
+00134 #define IP_FORWARD              1
+00135 
+00136 /* If defined to 1, IP options are allowed (but not parsed). If
+00137    defined to 0, all packets with IP options are dropped. */
+00138 #define IP_OPTIONS              1
+00139 
+00140 /* ---------- ICMP options ---------- */
+00141 #define ICMP_TTL                255
+00142 
+00143 
+00144 /* ---------- DHCP options ---------- */
+00145 /* Define LWIP_DHCP to 1 if you want DHCP configuration of
+00146    interfaces. DHCP is not implemented in lwIP 0.5.1, however, so
+00147    turning this on does currently not work. */
+00148 #define LWIP_DHCP               0
+00149 
+00150 /* 1 if you want to do an ARP check on the offered address
+00151    (recommended). */
+00152 #define DHCP_DOES_ARP_CHECK     1
+00153 
+00154 /* ---------- UDP options ---------- */
+00155 #define LWIP_UDP                1
+00156 #define UDP_TTL                 255
+00157 
+00158 
+00159 /* ---------- Statistics options ---------- */
+00160 #define STATS
+00161 
+00162 #ifdef STATS
+00163 #define LINK_STATS
+00164 #define IP_STATS
+00165 #define ICMP_STATS
+00166 #define UDP_STATS
+00167 #define TCP_STATS
+00168 #define MEM_STATS
+00169 #define MEMP_STATS
+00170 #define PBUF_STATS
+00171 #define SYS_STATS
+00172 #endif /* STATS */
+00173 
+00174 #endif /* __LWIPOPTS_H__ */
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/math_8h-source.html b/doc/doxygen/html/math_8h-source.html new file mode 100644 index 0000000..5d38d6c --- /dev/null +++ b/doc/doxygen/html/math_8h-source.html @@ -0,0 +1,24 @@ + + +Ubixos: math.h Source File + + + +

math.h

00001 #ifndef __MATH_H
+00002 #define __MATH_H
+00003 
+00004 typedef long long int quad_t;
+00005 typedef unsigned long long int u_quad_t;
+00006 
+00007 double atan(double x);
+00008 double sqrt(double x);
+00009 u_quad_t __udivdi3(u_quad_t a,u_quad_t b);
+00010 quad_t __divdi3(quad_t a,quad_t b);
+00011 
+00012 #endif
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/mem_8h-source.html b/doc/doxygen/html/mem_8h-source.html new file mode 100644 index 0000000..cef72d1 --- /dev/null +++ b/doc/doxygen/html/mem_8h-source.html @@ -0,0 +1,92 @@ + + +Ubixos: mem.h Source File + + + +

mem.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_MEM_H__
+00036 #define __LWIP_MEM_H__
+00037 
+00038 #include <ubixos/types.h>
+00039 
+00040 #include "net/debug.h"
+00041 #include "net/opt.h"
+00042 #include "net/arch.h"
+00043 
+00044 #if MEM_SIZE > 64000l
+00045 typedef uInt32 mem_size_t;
+00046 #else
+00047 typedef uInt16 mem_size_t;
+00048 #endif /* MEM_SIZE > 64000 */
+00049 
+00050 
+00051 void mem_init(void);
+00052 
+00053 void *mem_malloc(mem_size_t size);
+00054 void *mem_malloc2(mem_size_t size);
+00055 void mem_free(void *mem);
+00056 void *mem_realloc(void *mem, mem_size_t size);
+00057 void *mem_reallocm(void *mem, mem_size_t size);
+00058 
+00059 #ifdef MEM_PERF
+00060 void mem_perf_start(void);
+00061 void mem_perf_init(char *fname);
+00062 #endif /* MEM_PERF */
+00063 
+00064 #ifdef MEM_RECLAIM
+00065 typedef mem_size_t (*mem_reclaim_func)(void *arg, mem_size_t size);
+00066 void mem_register_reclaim(mem_reclaim_func f, void *arg);
+00067 void mem_reclaim(unsigned int size);
+00068 #else
+00069 #define mem_register_reclaim(f, arg)
+00070 #endif /* MEM_RECLAIM */
+00071 
+00072 
+00073 #define MEM_ALIGN_SIZE(size) (size + \
+00074                              ((((size) % MEM_ALIGNMENT) == 0)? 0 : \
+00075                              (MEM_ALIGNMENT - ((size) % MEM_ALIGNMENT))))
+00076 
+00077 #define MEM_ALIGN(addr) (void *)MEM_ALIGN_SIZE((uInt32)addr)
+00078 
+00079 #endif /* __LWIP_MEM_H__ */
+00080 
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/memp_8h-source.html b/doc/doxygen/html/memp_8h-source.html new file mode 100644 index 0000000..96c969e --- /dev/null +++ b/doc/doxygen/html/memp_8h-source.html @@ -0,0 +1,91 @@ + + +Ubixos: memp.h Source File + + + +

memp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 
+00036 #ifndef __LWIP_MEMP_H__
+00037 #define __LWIP_MEMP_H__
+00038 
+00039 #include <ubixos/types.h>
+00040 
+00041 #include "net/debug.h"
+00042 #include "net/arch/cc.h"
+00043 #include "net/lwipopts.h"
+00044 
+00045 typedef enum {
+00046   MEMP_PBUF,
+00047   MEMP_UDP_PCB,
+00048   MEMP_TCP_PCB,
+00049   MEMP_TCP_PCB_LISTEN,
+00050   MEMP_TCP_SEG,
+00051 
+00052   MEMP_NETBUF,
+00053   MEMP_NETCONN,
+00054   MEMP_API_MSG,
+00055   MEMP_TCPIP_MSG,
+00056 
+00057   MEMP_SYS_TIMEOUT,
+00058   
+00059   MEMP_MAX
+00060 } memp_t;
+00061 
+00062 void memp_init(void);
+00063 
+00064 void *memp_malloc(memp_t type);
+00065 void *memp_mallocp(memp_t type);
+00066 void *memp_malloc2(memp_t type);
+00067 void *memp_realloc(memp_t fromtype, memp_t totype, void *mem);
+00068 void memp_free(memp_t type, void *mem);
+00069 void memp_freep(memp_t type, void *mem);
+00070 
+00071 #if MEMP_RECLAIM
+00072 typedef uInt8 (*memp_reclaim_func)(void *arg, memp_t type);
+00073 void memp_register_reclaim(memp_t type, memp_reclaim_func f, void *arg);
+00074 #else 
+00075 #define memp_register_reclaim(t, f, arg)
+00076 #endif /* MEMP_RECLAIM */
+00077 
+00078 #endif /* __LWIP_MEMP_H__  */
+00079           
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/mount_8h-source.html b/doc/doxygen/html/mount_8h-source.html new file mode 100644 index 0000000..edbd31e --- /dev/null +++ b/doc/doxygen/html/mount_8h-source.html @@ -0,0 +1,58 @@ + + +Ubixos: mount.h Source File + + + +

mount.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _MOUNT_H
+00025 #define _MOUNT_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 struct mountPoints {
+00030   struct mountPoints *prev;
+00031   struct mountPoints *next;
+00032   struct fileSystem  *fs;
+00033   struct deviceNode  *device;
+00034   struct ubixDiskLabel   *diskLabel;
+00035   void               *fsInfo;
+00036   int                partition;
+00037   char               mountPoint[1024];
+00038   char               perms;
+00039   };
+00040 
+00041 int mount(int driveId,int partition,int fsType,char *mountPoint,char *perms);
+00042 int addMount(struct mountPoints *mp);
+00043 struct mountPoints *findMount(char *mountPoint);
+00044 
+00045 #endif
+00046 
+

Generated on Wed Apr 28 17:49:37 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ne2k_8h-source.html b/doc/doxygen/html/ne2k_8h-source.html new file mode 100644 index 0000000..6249596 --- /dev/null +++ b/doc/doxygen/html/ne2k_8h-source.html @@ -0,0 +1,186 @@ + + +Ubixos: ne2k.h Source File + + + +

ne2k.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _NE2K_H
+00025 #define _NE2K_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <sys/device.old.h>
+00029 
+00030 #define ether_addr  ether_addr_t
+00031 typedef struct dp_rcvhdr
+00032 {
+00033         uInt8 dr_status;                 /* Copy of rsr                       */
+00034         uInt8 dr_next;                   /* Pointer to next packet            */
+00035         uInt8 dr_rbcl;                   /* Receive Byte Count Low            */
+00036         uInt8 dr_rbch;                   /* Receive Byte Count High           */
+00037 } dp_rcvhdr_t;
+00038 
+00039 typedef union etheraddr {
+00040     unsigned char bytes[6];             /* byteorder safe initialization */
+00041     unsigned short shorts[3];           /* force 2-byte alignment */
+00042 } ether_addr;
+00043 
+00044 
+00045 struct nicBuffer {
+00046   struct nicBuffer *next;
+00047   int               length;
+00048   char             *buffer;
+00049   };
+00050 
+00051 #define RSR_FO         0x08
+00052 #define RSR_PRX                0x01
+00053 #define DEF_ENABLED    0x200
+00054 
+00055 #define OK      0
+00056 
+00057 
+00058 #define startPage 0x4C
+00059 #define stopPage  0x80
+00060 
+00061 
+00062 #define NE_CMD       0x00
+00063 #define NE_PSTART    0x01
+00064 #define NE_PSTOP     0x02
+00065 #define NE_BNRY      0x03
+00066 #define NE_TPSR      0x04
+00067 #define NE_ISR       0x07
+00068 #define NE_CURRENT   0x07
+00069 #define NE_RBCR0     0x0A
+00070 #define NE_RBCR1     0x0B
+00071 #define NE_RCR       0x0C
+00072 #define NE_TCR       0x0D
+00073 #define NE_DCR       0x0E
+00074 #define NE_IMR       0x0F
+00075 
+00076 
+00077 #define NE_DCR_WTS   0x01
+00078 #define NE_DCR_LS    0x08
+00079 #define NE_DCR_AR    0x10
+00080 #define NE_DCR_FT1   0x40
+00081 #define NE_DCR_FT0   0x20
+00082 
+00083 
+00084 
+00085 #define E8390_STOP   0x01
+00086 #define E8390_NODMA  0x20
+00087 #define E8390_PAGE0  0x00
+00088 #define E8390_PAGE1  0x40
+00089 #define E8390_CMD    0x00
+00090 #define E8390_START  0x02
+00091 #define E8390_RREAD  0x08
+00092 #define E8390_RWRITE 0x10
+00093 #define E8390_RXOFF  0x20
+00094 #define E8390_TXOFF  0x00
+00095 #define E8390_RXCONFIG 0x04
+00096 #define E8390_TXCONFIG 0x00
+00097 
+00098 #define EN0_COUNTER0 0x0d
+00099 #define EN0_DCFG     0x0e
+00100 #define EN0_RCNTLO   0x0a
+00101 #define EN0_RCNTHI   0x0b
+00102 #define EN0_ISR      0x07
+00103 #define EN0_IMR      0x0f
+00104 #define EN0_RSARLO   0x08
+00105 #define EN0_RSARHI   0x09
+00106 #define EN0_TPSR     0x04
+00107 #define EN0_RXCR     0x0c
+00108 #define EN0_TXCR     0x0D
+00109 #define EN0_STARTPG  0x01
+00110 #define EN0_STOPPG   0x02
+00111 #define EN0_BOUNDARY 0x03
+00112 
+00113 #define EN1_PHYS     0x01
+00114 #define EN1_CURPAG   0x07
+00115 #define EN1_MULT     0x08
+00116 
+00117 #define NE1SM_START_PG 0x20
+00118 #define NE1SM_STOP_PG 0x40
+00119 #define NESM_START_PG 0x40
+00120 #define NESM_STOP_PG  0x80
+00121 
+00122 #define ENISR_ALL    0x3f
+00123 
+00124 #define ENDCFG_WTS   0x01
+00125 
+00126 #define NE_DATAPORT  0x10
+00127 
+00128 #define TX_2X_PAGES 12
+00129 #define TX_1X_PAGES 6
+00130 #define TX_PAGES (dev->priv->pingPong ? TX_2X_PAGES : TX_1X_PAGES)
+00131 
+00132 
+00133 #define DP_CURR         0x7     /* Current Page Register             */
+00134 #define DP_MAR0         0x8     /* Multicast Address Register 0      */
+00135 #define DP_MAR1         0x9     /* Multicast Address Register 1      */
+00136 #define DP_MAR2         0xA     /* Multicast Address Register 2      */
+00137 #define DP_MAR3         0xB     /* Multicast Address Register 3      */
+00138 #define DP_MAR4         0xC     /* Multicast Address Register 4      */
+00139 #define DP_MAR5         0xD     /* Multicast Address Register 5      */
+00140 #define DP_MAR6         0xE     /* Multicast Address Register 6      */
+00141 #define DP_MAR7         0xF     /* Multicast Address Register 7      */
+00142 
+00143 #define DP_CNTR0        0xD     /* Tally Counter 0                   */
+00144 #define DP_CNTR1        0xE     /* Tally Counter 1                   */
+00145 #define DP_CNTR2        0xF     /* Tally Counter 2                   */
+00146 
+00147 
+00148 #define DP_PAGESIZE     256
+00149 
+00150 extern char *nicPacket;
+00151 extern uInt32 packetLength;
+00152 
+00153 
+00154 int ne2kInit(uInt32);
+00155 int ne2kProbe(int,struct device *);
+00156 int ne2kDevInit(struct device *);
+00157 void NS8390_init(struct device *dev,int startp);
+00158 
+00159 void ne2kISR();
+00160 void ne2kHandler();
+00161 
+00162 int NICtoPC(struct device *dev,void *packet,int length,int nic_addr);
+00163 int PCtoNIC(struct device *dev,void *packet,int length);
+00164 
+00165 struct nicBuffer *ne2kAllocBuffer(int);
+00166 struct nicBuffer *ne2kGetBuffer();
+00167 void ne2kFreeBuffer(struct nicBuffer *);
+00168 
+00169 #endif
+00170 
+00171 /***
+00172  END
+00173  ***/
+00174 
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/net_8h-source.html b/doc/doxygen/html/net_8h-source.html new file mode 100644 index 0000000..99e551e --- /dev/null +++ b/doc/doxygen/html/net_8h-source.html @@ -0,0 +1,48 @@ + + +Ubixos: net.h Source File + + + +

net.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _NET_H
+00025 #define _NET_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 void netInit();
+00030 
+00031 #endif
+00032 
+00033 /***
+00034  END
+00035  ***/
+00036 
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/netif_8h-source.html b/doc/doxygen/html/netif_8h-source.html new file mode 100644 index 0000000..70c42d4 --- /dev/null +++ b/doc/doxygen/html/netif_8h-source.html @@ -0,0 +1,111 @@ + + +Ubixos: netif.h Source File + + + +

netif.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_NETIF_H__
+00036 #define __LWIP_NETIF_H__
+00037 
+00038 #include "net/opt.h"
+00039 
+00040 #include "net/err.h"
+00041 
+00042 #include "net/ipv4/ip_addr.h"
+00043 #include "net/ipv4/inet.h"
+00044 
+00045 #include "net/pbuf.h"
+00046 
+00047 
+00048 struct netif {
+00049   struct netif *next;
+00050   uInt8 num;
+00051   struct ip_addr ip_addr;
+00052   struct ip_addr netmask;  /* netmask in network byte order */
+00053   struct ip_addr gw;
+00054   char hwaddr[6];
+00055 
+00056   /* This function is called by the network device driver
+00057      when it wants to pass a packet to the TCP/IP stack. */
+00058   err_t (* input)(struct pbuf *p, struct netif *inp);
+00059 
+00060   /* The following two fields should be filled in by the
+00061      initialization function for the device driver. */
+00062 
+00063   char name[2];
+00064   /* This function is called by the IP module when it wants
+00065      to send a packet on the interface. */
+00066   err_t (* output)(struct netif *netif, struct pbuf *p, struct ip_addr *ipaddr);
+00067   err_t (* linkoutput)(struct netif *netif, struct pbuf *p);
+00068 
+00069   /* This field can be set bu the device driver and could point
+00070      to state information for the device. */
+00071   void *state;
+00072 };
+00073 
+00074 /* The list of network interfaces. */
+00075 extern struct netif *netif_list;
+00076 extern struct netif *netif_default;
+00077 
+00078 
+00079 /* netif_init() must be called first. */
+00080 void netif_init();
+00081 
+00082 struct netif *netif_add(struct ip_addr *ipaddr, struct ip_addr *netmask,
+00083                         struct ip_addr *gw,
+00084                         void (* init)(struct netif *netif),
+00085                         err_t (* input)(struct pbuf *p, struct netif *netif));
+00086 
+00087 /* Returns a network interface given its name. The name is of the form
+00088    "et0", where the first two letters are the "name" field in the
+00089    netif structure, and the digit is in the num field in the same
+00090    structure. */
+00091 struct netif *netif_find(char *name);
+00092 
+00093 void netif_set_default(struct netif *netif);
+00094 
+00095 void netif_set_ipaddr(struct netif *netif, struct ip_addr *ipaddr);
+00096 void netif_set_netmask(struct netif *netif, struct ip_addr *netmast);
+00097 void netif_set_gw(struct netif *netif, struct ip_addr *gw);
+00098 
+00099 #endif /* __LWIP_NETIF_H__ */
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ogDisplay__UbixOS_8h-source.html b/doc/doxygen/html/ogDisplay__UbixOS_8h-source.html new file mode 100644 index 0000000..1d088a8 --- /dev/null +++ b/doc/doxygen/html/ogDisplay__UbixOS_8h-source.html @@ -0,0 +1,99 @@ + + +Ubixos: ogDisplay_UbixOS.h Source File + + + +

ogDisplay_UbixOS.h

00001 #ifndef OGDISPLAY_UBIXOS_H
+00002 #define OGDISPLAY_UBIXOS_H
+00003 
+00004 #include <objgfx40/objgfx40.h>
+00005 
+00006 struct ogModeInfo {
+00007     uInt16 modeAttributes     __attribute__((packed));
+00008     uInt8  windowAFlags       __attribute__((packed));
+00009     uInt8  windowBFlags       __attribute__((packed));
+00010     uInt16 granularity        __attribute__((packed));
+00011     uInt16 windowSize         __attribute__((packed));
+00012     uInt16 windowASeg         __attribute__((packed));
+00013     uInt16 windowBSeg         __attribute__((packed));
+00014     void*  bankSwitch         __attribute__((packed));
+00015     uInt16 bytesPerLine       __attribute__((packed));
+00016     uInt16 xRes               __attribute__((packed));
+00017     uInt16 yRes               __attribute__((packed));
+00018     uInt8  charWidth          __attribute__((packed));
+00019     uInt8  charHeight         __attribute__((packed));
+00020     uInt8  numBitPlanes       __attribute__((packed));
+00021     uInt8  bitsPerPixel       __attribute__((packed));
+00022     uInt8  numberOfBanks      __attribute__((packed));
+00023     uInt8  memoryModel        __attribute__((packed));
+00024     uInt8  bankSize           __attribute__((packed));
+00025     uInt8  numOfImagePages    __attribute__((packed));
+00026     uInt8  reserved           __attribute__((packed));
+00027     // Direct colour fields (required for Direct/6 and YUV/7 memory models
+00028     uInt8  redMaskSize        __attribute__((packed));
+00029     uInt8  redFieldPosition   __attribute__((packed));
+00030     uInt8  greenMaskSize      __attribute__((packed));
+00031     uInt8  greenFieldPosition __attribute__((packed));
+00032     uInt8  blueMaskSize       __attribute__((packed));
+00033     uInt8  blueFieldPosition  __attribute__((packed));
+00034     uInt8  alphaMaskSize      __attribute__((packed));
+00035     uInt8  alphaFieldPosition __attribute__((packed));
+00036     uInt8  directColourMode   __attribute__((packed));
+00037     // VESA 2.0 specific fields
+00038     uInt32 physBasePtr        __attribute__((packed));
+00039     void*  offScreenMemOffset __attribute__((packed));
+00040     uInt16 offScreenMemSize   __attribute__((packed));
+00041     uInt8  paddington[461]    __attribute__((packed));
+00042 };
+00043 
+00044 struct ogVESAInfo {
+00045     char    VBESignature[4]   __attribute__((packed));
+00046     uInt8   minVersion        __attribute__((packed));
+00047     uInt8   majVersion        __attribute__((packed));
+00048     uInt32  OEMStringPtr      __attribute__((packed));
+00049     uInt32  capabilities      __attribute__((packed));
+00050     uInt32  videoModePtr      __attribute__((packed));
+00051     uInt16  totalMemory       __attribute__((packed));
+00052     // VESA 2.0 specific fields
+00053     uInt16  OEMSoftwareRev    __attribute__((packed));
+00054     uInt32  OEMVendorNamePtr  __attribute__((packed));
+00055     uInt32  OEMProductNamePtr __attribute__((packed));
+00056     uInt32  OEMProductRevPtr  __attribute__((packed));
+00057     uInt8   paddington[474]   __attribute__((packed));
+00058 };
+00059 
+00060 
+00061 class ogDisplay_UbixOS : public ogSurface {
+00062  protected:
+00063   void *         pages[2];
+00064   uInt32         activePage;
+00065   uInt32         visualPage;
+00066   ogVESAInfo *   VESAInfo;
+00067   ogModeInfo *   modeInfo;
+00068 
+00069   uInt16         FindMode(uInt32, uInt32, uInt32);
+00070   void           GetModeInfo(uInt16);
+00071   void           GetVESAInfo(void);
+00072   void           SetMode(uInt16);
+00073   void           SetPal(void);
+00074  public:
+00075                  ogDisplay_UbixOS(void);
+00076   virtual bool   Alias(ogSurface&, uInt32, uInt32, uInt32, uInt32);
+00077   virtual bool   Clone(ogSurface&);
+00078   virtual void   CopyPalette(ogSurface&);
+00079   virtual bool   Create(uInt32, uInt32, ogPixelFmt);
+00080   virtual bool   LoadPalette(const char *);
+00081   virtual void   SetPalette(const ogRGBA8[]);
+00082   virtual void   SetPalette(uInt8, uInt8, uInt8, uInt8);
+00083   virtual void   SetPalette(uInt8, uInt8, uInt8, uInt8, uInt8);
+00084   virtual        ~ogDisplay_UbixOS(void);
+00085 }; // ogDisplay_UbixOS
+00086 
+00087 #endif
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ogDisplay__VESA_8h-source.html b/doc/doxygen/html/ogDisplay__VESA_8h-source.html new file mode 100644 index 0000000..f21b7d8 --- /dev/null +++ b/doc/doxygen/html/ogDisplay__VESA_8h-source.html @@ -0,0 +1,202 @@ + + +Ubixos: ogDisplay_VESA.h Source File + + + +

ogDisplay_VESA.h

00001 #ifndef OGDISPLAY_VESA_H
+00002 
+00003 #define OGDISPLAY_VESA_H
+00004 
+00005 
+00006 
+00007 #include "objgfx30.h"
+00008 
+00009 
+00010 
+00011 struct TMode_Rec {
+00012 
+00013     uInt16 ModeAttributes     __attribute__((packed));
+00014 
+00015     uInt8  WindowAFlags       __attribute__((packed));
+00016 
+00017     uInt8  WindowBFlags       __attribute__((packed));
+00018 
+00019     uInt16 Granularity        __attribute__((packed));
+00020 
+00021     uInt16 WindowSize         __attribute__((packed));
+00022 
+00023     uInt16 WindowASeg         __attribute__((packed));
+00024 
+00025     uInt16 WindowBSeg         __attribute__((packed));
+00026 
+00027     void*  BankSwitch         __attribute__((packed));
+00028 
+00029     uInt16 BytesPerLine       __attribute__((packed));
+00030 
+00031     uInt16 xRes               __attribute__((packed));
+00032 
+00033     uInt16 yRes               __attribute__((packed));
+00034 
+00035     uInt8  CharWidth          __attribute__((packed));
+00036 
+00037     uInt8  CharHeight         __attribute__((packed));
+00038 
+00039     uInt8  NumBitPlanes       __attribute__((packed));
+00040 
+00041     uInt8  BitsPerPixel       __attribute__((packed));
+00042 
+00043     uInt8  NumberOfBanks      __attribute__((packed));
+00044 
+00045     uInt8  MemoryModel        __attribute__((packed));
+00046 
+00047     uInt8  BankSize           __attribute__((packed));
+00048 
+00049     uInt8  NumOfImagePages    __attribute__((packed));
+00050 
+00051     uInt8  Reserved           __attribute__((packed));
+00052 
+00053     // Direct colour fields (required for Direct/6 and YUV/7 memory models
+00054 
+00055     uInt8  RedMaskSize        __attribute__((packed));
+00056 
+00057     uInt8  RedFieldPosition   __attribute__((packed));
+00058 
+00059     uInt8  GreenMaskSize      __attribute__((packed));
+00060 
+00061     uInt8  GreenFieldPosition __attribute__((packed));
+00062 
+00063     uInt8  BlueMaskSize       __attribute__((packed));
+00064 
+00065     uInt8  BlueFieldPosition  __attribute__((packed));
+00066 
+00067     uInt8  AlphaMaskSize      __attribute__((packed));
+00068 
+00069     uInt8  AlphaFieldPosition __attribute__((packed));
+00070 
+00071     uInt8  DirectColourMode   __attribute__((packed));
+00072 
+00073     // VESA 2.0 specific fields
+00074 
+00075     uInt32 physBasePtr        __attribute__((packed));
+00076 
+00077     void*  OffScreenMemOffset __attribute__((packed));
+00078 
+00079     uInt16 OffScreenMemSize   __attribute__((packed));
+00080 
+00081     uInt8  paddington[461]    __attribute__((packed));
+00082 
+00083 };
+00084 
+00085 
+00086 
+00087 struct TVESA_Rec {
+00088 
+00089     char    VBESignature[4]   __attribute__((packed));
+00090 
+00091     uInt8   minVersion        __attribute__((packed));
+00092 
+00093     uInt8   majVersion        __attribute__((packed));
+00094 
+00095     uInt32  OEMStringPtr      __attribute__((packed));
+00096 
+00097     uInt32  Capabilities      __attribute__((packed));
+00098 
+00099     uInt32  VideoModePtr      __attribute__((packed));
+00100 
+00101     uInt16  TotalMemory       __attribute__((packed));
+00102 
+00103     // VESA 2.0 specific fields
+00104 
+00105     uInt16  OEMSoftwareRev    __attribute__((packed));
+00106 
+00107     uInt32  OEMVendorNamePtr  __attribute__((packed));
+00108 
+00109     uInt32  OEMProductNamePtr __attribute__((packed));
+00110 
+00111     uInt32  OEMProductRevPtr  __attribute__((packed));
+00112 
+00113     uInt8   paddington[474]   __attribute__((packed));
+00114 
+00115 };
+00116 
+00117 
+00118 
+00119 class ogDisplay_VESA : public ogSurface {
+00120 
+00121  protected:
+00122 
+00123   uInt16       ScreenSelector;
+00124 
+00125   TVESA_Rec*   VESARec;
+00126 
+00127   TMode_Rec*   ModeRec;
+00128 
+00129   bool         InGraphics;
+00130 
+00131   uInt16       findMode(uInt32, uInt32, uInt32);
+00132 
+00133   void         getModeInfo(uInt16);
+00134 
+00135   void         getVESAInfo(void);
+00136 
+00137   void         setMode(uInt16);
+00138 
+00139   virtual uInt32 rawGetPixel(uInt32, uInt32);  
+00140 
+00141   virtual void rawSetPixel(uInt32, uInt32, uInt32);
+00142 
+00143   virtual void rawLine(uInt32, uInt32, uInt32, uInt32, uInt32);
+00144 
+00145   void         setPal(void);
+00146 
+00147  public:
+00148 
+00149                ogDisplay_VESA(void);
+00150 
+00151   virtual bool ogAvail(void);
+00152 
+00153   virtual bool ogAlias(ogSurface&, uInt32, uInt32, uInt32, uInt32);
+00154 
+00155   virtual void ogClear(uInt32);
+00156 
+00157   virtual bool ogClone(ogSurface&);
+00158 
+00159   virtual void ogCopyLineTo(uInt32, uInt32, const void *, uInt32);
+00160 
+00161   virtual void ogCopyLineFrom(uInt32, uInt32, void *, uInt32);
+00162 
+00163   virtual void ogCopyPal(ogSurface&);
+00164 
+00165   virtual bool ogCreate(uInt32, uInt32, ogPixelFmt);
+00166 
+00167   virtual uInt32 ogGetPixel(int32, int32);
+00168 
+00169   virtual void * ogGetPtr(uInt32, uInt32);
+00170 
+00171   virtual void ogHLine(int32, int32, int32, uInt32);
+00172 
+00173   virtual bool ogLoadPal(const char *);  
+00174 
+00175   virtual void ogSetPixel(int32, int32, uInt32);
+00176 
+00177   virtual void ogSetRGBPalette(uInt8, uInt8, uInt8, uInt8);  
+00178 
+00179   virtual void ogVFlip(void);
+00180 
+00181   virtual void ogVLine(int32, int32, int32, uInt32);
+00182 
+00183   virtual      ~ogDisplay_VESA(void);
+00184 
+00185 }; // ogDisplay_VESA
+00186 
+00187 
+00188 
+00189 #endif
+00190 
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/opt_8h-source.html b/doc/doxygen/html/opt_8h-source.html new file mode 100644 index 0000000..20227d0 --- /dev/null +++ b/doc/doxygen/html/opt_8h-source.html @@ -0,0 +1,109 @@ + + +Ubixos: opt.h Source File + + + +

opt.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_OPT_H__
+00036 #define __LWIP_OPT_H__
+00037 
+00038 #include "net/lwipopts.h"
+00039 
+00040 /* Define some handy default values for configuration parameters. */
+00041 
+00042 #ifndef ICMP_TTL
+00043 #define ICMP_TTL                255
+00044 #endif
+00045 
+00046 #ifndef UDP_TTL
+00047 #define UDP_TTL                 255
+00048 #endif
+00049 
+00050 #ifndef TCP_TTL
+00051 #define TCP_TTL                 255
+00052 #endif
+00053 
+00054 #ifndef TCP_MSS
+00055 #define TCP_MSS                 128 /* A *very* conservative default. */
+00056 #endif
+00057 
+00058 #ifndef TCP_WND
+00059 #define TCP_WND                 2048
+00060 #endif 
+00061 
+00062 #ifndef TCP_MAXRTX
+00063 #define TCP_MAXRTX              12
+00064 #endif
+00065 
+00066 #ifndef TCP_SYNMAXRTX
+00067 #define TCP_SYNMAXRTX           6
+00068 #endif
+00069 
+00070 #ifndef MEM_ALIGNMENT
+00071 #define MEM_ALIGNMENT           1
+00072 #endif
+00073 
+00074 #ifndef PBUF_POOL_SIZE
+00075 #define PBUF_POOL_SIZE          16
+00076 #endif
+00077 
+00078 #ifndef PBUF_POOL_BUFSIZE
+00079 #define PBUF_POOL_BUFSIZE       128
+00080 #endif
+00081 
+00082 #ifndef PBUF_LINK_HLEN
+00083 #define PBUF_LINK_HLEN          0
+00084 #endif
+00085 
+00086 #ifndef LWIP_UDP
+00087 #define LWIP_UDP                1
+00088 #endif
+00089 
+00090 #ifndef LWIP_TCP
+00091 #define LWIP_TCP                1
+00092 #endif
+00093 
+00094 #endif /* __LWIP_OPT_H__ */
+00095 
+00096 
+00097 
+

Generated on Wed Apr 28 17:49:38 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/paging_8h-source.html b/doc/doxygen/html/paging_8h-source.html new file mode 100644 index 0000000..76bd175 --- /dev/null +++ b/doc/doxygen/html/paging_8h-source.html @@ -0,0 +1,73 @@ + + +Ubixos: paging.h Source File + + + +

paging.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _PAGING_H
+00025 #define _PAGING_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define pageLength        0x00000400
+00030 #define pageSize          4096
+00031 #define pageEntries       (pageSize/4)
+00032 #define pagePresent       0x00000001
+00033 #define pageWrite         0x00000002
+00034 #define pageUser          0x00000004
+00035 #define pageCow           0x00000200
+00036 #define pageStack         0x00000400
+00037 #define pageDefault       (pagePresent|pageWrite|pageUser)
+00038 #define kernelPageDefault (pagePresent|pageWrite)
+00039 #define tablesBaseAddress 0xBFC00000
+00040 #define parentPageDirAddr 0x100000
+00041 
+00042 int vmmPagingInit();
+00043 int vmmClearVirtualPage(uInt32 pageAddr);
+00044 int vmmRemapPage(uInt32,uInt32);
+00045 void vmmUnmapPage(uInt32,int);
+00046 void vmmUnmapPages(void *,uInt32);
+00047 void vmmSetPageAttribute(uInt32,int);
+00048 void *vmmMapFromTask(pidType,void *,uInt32);
+00049 void *vmmCopyVirtualSpace(pidType);
+00050 void *vmmGetFreePage(pidType);
+00051 void *vmmGetFreeKernelPage(pidType pid,uInt16 count);
+00052 void *vmmGetPhysicalAddr(uInt32);
+00053 void *vmmCreateVirtualSpace(pidType);
+00054 void *vmmGetFreeVirtualPage(pidType,int);
+00055 void vmmPageFault();
+00056 void _vmmPageFault();
+00057 
+00058 extern uInt32 *kernelPageDirectory;
+00059 
+00060 #endif
+00061 
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/pbuf_8h-source.html b/doc/doxygen/html/pbuf_8h-source.html new file mode 100644 index 0000000..17e3a62 --- /dev/null +++ b/doc/doxygen/html/pbuf_8h-source.html @@ -0,0 +1,164 @@ + + +Ubixos: pbuf.h Source File + + + +

pbuf.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 /*-----------------------------------------------------------------------------------*/
+00036 #ifndef __LWIP_PBUF_H__
+00037 #define __LWIP_PBUF_H__
+00038 
+00039 #include "net/debug.h"
+00040 #include "net/arch.h"
+00041 
+00042 
+00043 #define PBUF_TRANSPORT_HLEN 20
+00044 #define PBUF_IP_HLEN        20
+00045 
+00046 typedef enum {
+00047   PBUF_TRANSPORT,
+00048   PBUF_IP,
+00049   PBUF_LINK,
+00050   PBUF_RAW
+00051 } pbuf_layer;
+00052 
+00053 typedef enum {
+00054   PBUF_RAM,
+00055   PBUF_ROM,
+00056   PBUF_POOL
+00057 } pbuf_flag;
+00058 
+00059 /* Definitions for the pbuf flag field (these are not the flags that
+00060    are passed to pbuf_alloc()). */
+00061 #define PBUF_FLAG_RAM   0x00    /* Flags that pbuf data is stored in RAM. */
+00062 #define PBUF_FLAG_ROM   0x01    /* Flags that pbuf data is stored in ROM. */
+00063 #define PBUF_FLAG_POOL  0x02    /* Flags that the pbuf comes from the
+00064                                    pbuf pool. */
+00065 
+00066 struct pbuf {
+00067   struct pbuf *next;
+00068   
+00069   /* high 4 bits, flags, low 4 bits reference count */
+00070   uInt8 flags, ref;
+00071   void *payload;
+00072   
+00073   /* Total length of buffer + additionally chained buffers. */
+00074   uInt16 tot_len;
+00075   /* Length of this buffer. */
+00076   uInt16 len;  
+00077   
+00078 };
+00079 
+00080 /* pbuf_init():
+00081 
+00082    Initializes the pbuf module. The num parameter determines how many
+00083    pbufs that should be allocated to the pbuf pool, and the size
+00084    parameter specifies the size of the data allocated to those.  */
+00085 void pbuf_init(void);
+00086 
+00087 /* pbuf_alloc():
+00088    
+00089    Allocates a pbuf at protocol layer l. The actual memory allocated
+00090    for the pbuf is determined by the layer at which the pbuf is
+00091    allocated and the requested size (from the size parameter). The
+00092    flag parameter decides how and where the pbuf should be allocated
+00093    as follows:
+00094  
+00095    * PBUF_RAM: buffer memory for pbuf is allocated as one large
+00096                chunk. This includesprotocol headers as well.
+00097    
+00098    * RBUF_ROM: no buffer memory is allocated for the pbuf, even for
+00099                 protocol headers.  Additional headers must be
+00100                 prepended by allocating another pbuf and chain in to
+00101                 the front of the ROM pbuf.
+00102 
+00103    * PBUF_ROOL: the pbuf is allocated as a pbuf chain, with pbufs from
+00104                 the pbuf pool that is allocated during pbuf_init().  */
+00105 struct pbuf *pbuf_alloc(pbuf_layer l, uInt16 size, pbuf_flag flag);
+00106 
+00107 /* pbuf_realloc():
+00108 
+00109    Shrinks the pbuf to the size given by the size parameter. 
+00110  */
+00111 void pbuf_realloc(struct pbuf *p, uInt16 size); 
+00112 
+00113 /* pbuf_header():
+00114 
+00115    Tries to move the p->payload pointer header_size number of bytes
+00116    upward within the pbuf. The return value is non-zero if it
+00117    fails. If so, an additional pbuf should be allocated for the header
+00118    and it should be chained to the front. */
+00119 uInt8 pbuf_header(struct pbuf *p, Int16 header_size);
+00120 
+00121 /* pbuf_ref():
+00122 
+00123    Increments the reference count of the pbuf p.
+00124  */
+00125 void pbuf_ref(struct pbuf *p);
+00126 
+00127 /* pbuf_free():
+00128 
+00129    Decrements the reference count and deallocates the pbuf if the
+00130    reference count is zero. If the pbuf is a chain all pbufs in the
+00131    chain are deallocated.  */
+00132 uInt8 pbuf_free(struct pbuf *p);
+00133 
+00134 /* pbuf_clen():
+00135 
+00136    Returns the length of the pbuf chain. */
+00137 uInt8 pbuf_clen(struct pbuf *p);  
+00138 
+00139 /* pbuf_chain():
+00140 
+00141    Chains pbuf t on the end of pbuf h. Pbuf h will have it's tot_len
+00142    field adjusted accordingly. Pbuf t should no be used any more after
+00143    a call to this function, since pbuf t is now a part of pbuf h.  */
+00144 void pbuf_chain(struct pbuf *h, struct pbuf *t);
+00145 
+00146 /* pbuf_dechain():
+00147 
+00148    Picks off the first pbuf from the pbuf chain p. Returns the tail of
+00149    the pbuf chain or NULL if the pbuf p was not chained. */
+00150 struct pbuf *pbuf_dechain(struct pbuf *p);
+00151 
+00152 #endif /* __LWIP_PBUF_H__ */
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/pci_8h-source.html b/doc/doxygen/html/pci_8h-source.html new file mode 100644 index 0000000..4101085 --- /dev/null +++ b/doc/doxygen/html/pci_8h-source.html @@ -0,0 +1,91 @@ + + +Ubixos: pci.h Source File + + + +

pci.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _PCI_H
+00025 #define _PCI_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 
+00030 struct pciConfig {
+00031   uInt16 vendorId;
+00032   uInt16 deviceId;
+00033 
+00034   uInt16 command;
+00035   uInt16 status;
+00036 
+00037   uInt8  revisionId;
+00038   uInt8  interface;
+00039   uInt8  subClass;
+00040   uInt8  baseClass;
+00041 
+00042   uInt8  cacheLineSize;
+00043   uInt8  latencyTimer;
+00044   uInt8  headerType;
+00045   uInt8  bist;
+00046 
+00047   /* device info */
+00048   uInt8  bus;
+00049   uInt8  dev;
+00050   uInt8  func;
+00051   uInt8  irq;
+00052 
+00053   /* base registers */
+00054   uInt32 base[6];
+00055   uInt32 size[6];
+00056 
+00057   uInt16 subsysVendor;
+00058   uInt16 subsys;
+00059   
+00060   };
+00061 
+00062 struct confadd {
+00063   uInt8 reg:8;
+00064   uInt8 func:3;
+00065   uInt8 dev:5;
+00066   uInt8 bus:8;
+00067   uInt8 rsvd:7;
+00068   uInt8 enable:1;
+00069   };
+00070 
+00071 #define countof(a)     (sizeof(a) / sizeof(a[0]))
+00072   
+00073 int pciInit();
+00074 bool pciProbe(int bus,int dev,int func,struct pciConfig *cfg);
+00075 uInt32 pciRead(int bus, int dev, int func, int reg, int bytes);
+00076 void pciWrite(int bus,int dev,int func,int reg,uInt32 v,int bytes);
+00077 
+00078 #endif
+00079 
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/perf_8h-source.html b/doc/doxygen/html/perf_8h-source.html new file mode 100644 index 0000000..dc3685e --- /dev/null +++ b/doc/doxygen/html/perf_8h-source.html @@ -0,0 +1,78 @@ + + +Ubixos: perf.h Source File + + + +

perf.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_PERF_H__
+00036 #define __ARCH_PERF_H__
+00037 
+00038 #include <ubixos/times.h>
+00039 
+00040 #ifdef PERF
+00041 #define PERF_START  { \
+00042                          unsigned long __c1l, __c1h, __c2l, __c2h; \
+00043                          __asm__(".byte 0x0f, 0x31" : "=a" (__c1l), "=d" (__c1h))
+00044 #define PERF_STOP(x)   __asm__(".byte 0x0f, 0x31" : "=a" (__c2l), "=d" (__c2h)); \
+00045                        perf_print(__c1l, __c1h, __c2l, __c2h, x);}
+00046 
+00047 /*#define PERF_START do { \
+00048                      struct tms __perf_start, __perf_end; \
+00049                      times(&__perf_start)
+00050 #define PERF_STOP(x) times(&__perf_end); \
+00051                      perf_print_times(&__perf_start, &__perf_end, x);\
+00052                      } while(0)*/
+00053 #else /* PERF */
+00054 #define PERF_START    /* null definition */
+00055 #define PERF_STOP(x)  /* null definition */
+00056 #endif /* PERF */
+00057 
+00058 void perf_print(unsigned long c1l, unsigned long c1h,
+00059                 unsigned long c2l, unsigned long c2h,
+00060                 char *key);
+00061 
+00062 void perf_print_times(struct tms *start, struct tms *end, char *key);
+00063 
+00064 void perf_init(char *fname);
+00065 
+00066 #endif /* __ARCH_PERF_H__ */
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/pit_8h-source.html b/doc/doxygen/html/pit_8h-source.html new file mode 100644 index 0000000..ac6950d --- /dev/null +++ b/doc/doxygen/html/pit_8h-source.html @@ -0,0 +1,13 @@ + + +Ubixos: pit.h Source File + + + +

pit.h

00001 int pitInit(int);
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/sched_8h-source.html b/doc/doxygen/html/sched_8h-source.html new file mode 100644 index 0000000..f626332 --- /dev/null +++ b/doc/doxygen/html/sched_8h-source.html @@ -0,0 +1,102 @@ + + +Ubixos: sched.h Source File + + + +

sched.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _SCHED_H
+00025 #define _SCHED_H
+00026 
+00027 #ifdef __cplusplus
+00028 extern "C" {
+00029 #endif
+00030 
+00031 #include <ubixos/types.h>
+00032 #include <ubixos/elf.h>
+00033 #include <vfs/file.h>
+00034 #include <sys/tss.h>
+00035 
+00036 
+00037 typedef enum { DEAD=-1,NEW=0,READY=1,RUNNING=2,IDLE=3 } tState;
+00038 
+00039 struct osInfo {
+00040   struct mountPoints   *container;
+00041   elfSectionheader     *sectionHeader;
+00042   struct taskFileInfo   fileInfo;
+00043   struct consoleStruct *terminal;
+00044   uInt16                sectionCount;
+00045   uInt16                stringSection;
+00046   uInt8                 timer;
+00047   uInt8                 v86Task;
+00048   bool                  v86If;
+00049   uInt32                curDir;
+00050   uInt32                vmStart;
+00051   uInt32                stdinSize;
+00052   uInt32                controlKeys;
+00053   char                 *stdin;
+00054   char                 *shstrtab;
+00055   char                 *cwd;
+00056   };
+00057 
+00058 typedef struct taskStruct {
+00059   pidType           id;
+00060   struct taskStruct *prev;
+00061   struct taskStruct *next;
+00062   struct tssStruct  tss;
+00063   struct i387Struct i387;
+00064   struct osInfo     oInfo;
+00065   tState            state;
+00066   uInt32            gid;
+00067   uInt32            uid;
+00068   uInt16            usedMath;
+00069   } kTask_t;
+00070 
+00071 
+00072 int schedInit();
+00073 void sched();
+00074 void schedYield();
+00075 int schedEndTask(pidType pid);
+00076 kTask_t *schedNewTask();
+00077 kTask_t *schedFindTask(uInt32 id);
+00078 int deleteTask(uInt32);
+00079 
+00080 extern kTask_t *taskList;
+00081 extern uInt32  nextID;
+00082 extern kTask_t *_current;
+00083 extern kTask_t *_usedMath;
+00084 
+00085 #ifdef __cplusplus
+00086 }
+00087 #endif
+00088 
+00089 #endif
+00090 
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/sde_8h-source.html b/doc/doxygen/html/sde_8h-source.html new file mode 100644 index 0000000..3b46610 --- /dev/null +++ b/doc/doxygen/html/sde_8h-source.html @@ -0,0 +1,67 @@ + + +Ubixos: sde.h Source File + + + +

sde.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _SDE_H
+00025 #define _SDE_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define registerWindow   1
+00030 #define windowReady      2
+00031 #define drawWindow       3
+00032 #define killWindow       4
+00033 
+00034 #ifdef __cplusplus
+00035 extern "C"
+00036 #endif
+00037 void sdeThread();
+00038 
+00039 #ifdef __cplusplus
+00040 extern "C"
+00041 #endif
+00042 void sysSDE(uInt32 cmd,void *ptr);
+00043 
+00044 struct sdeWindows {
+00045   struct sdeWindows *next;
+00046   struct sdeWindows *prev;
+00047   void              *buf;
+00048   pidType            pid;
+00049   uInt8              status;
+00050   };
+00051 
+00052 extern struct sdeWindows *windows;  
+00053   
+00054 #endif
+00055 
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/shell_8h-source.html b/doc/doxygen/html/shell_8h-source.html new file mode 100644 index 0000000..34e5310 --- /dev/null +++ b/doc/doxygen/html/shell_8h-source.html @@ -0,0 +1,52 @@ + + +Ubixos: shell.h Source File + + + +

shell.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __SHELL_H__
+00036 #define __SHELL_H__
+00037 
+00038 void shell_init(void);
+00039 
+00040 #endif /* __SHELL_H__ */
+

Generated on Wed Apr 28 17:49:39 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/sockets_8h-source.html b/doc/doxygen/html/sockets_8h-source.html new file mode 100644 index 0000000..fd18db7 --- /dev/null +++ b/doc/doxygen/html/sockets_8h-source.html @@ -0,0 +1,116 @@ + + +Ubixos: sockets.h Source File + + + +

sockets.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 
+00036 
+00037 #ifndef __LWIP_SOCKETS_H__
+00038 #define __LWIP_SOCKETS_H__
+00039 
+00040 #include <ubixos/types.h>
+00041 
+00042 struct in_addr {
+00043   uInt32 s_addr;
+00044 };
+00045 
+00046 
+00047 struct sockaddr_in {
+00048   uInt8 sin_len;
+00049   uInt8 sin_family;
+00050   uInt16 sin_port;
+00051   struct in_addr sin_addr;
+00052   char sin_zero[8];
+00053 };
+00054 
+00055 struct sockaddr {
+00056   uInt8 sa_len;
+00057   uInt8 sa_family;
+00058   char sa_data[14];
+00059 };
+00060 
+00061 #define SOCK_STREAM     1
+00062 #define SOCK_DGRAM      2
+00063 
+00064 #define AF_INET         2
+00065 #define PF_INET         AF_INET
+00066 
+00067 #define IPPROTO_TCP     6
+00068 #define IPPROTO_UDP     17
+00069 
+00070 #define INADDR_ANY      0
+00071 #define INADDR_BROADCAST 0xffffffff
+00072 
+00073 int lwip_accept(int s, struct sockaddr *addr, int *addrlen);
+00074 int lwip_bind(int s, struct sockaddr *name, int namelen);
+00075 int lwip_close(int s);
+00076 int lwip_connect(int s, struct sockaddr *name, int namelen);
+00077 int lwip_listen(int s, int backlog);
+00078 int lwip_recv(int s, void *mem, int len, unsigned int flags);
+00079 int lwip_read(int s, void *mem, int len);
+00080 int lwip_recvfrom(int s, void *mem, int len, unsigned int flags,
+00081                   struct sockaddr *from, int *fromlen);
+00082 int lwip_send(int s, void *dataptr, int size, unsigned int flags);
+00083 int lwip_sendto(int s, void *dataptr, int size, unsigned int flags,
+00084                 struct sockaddr *to, int tolen);
+00085 int lwip_socket(int domain, int type, int protocol);
+00086 int lwip_write(int s, void *dataptr, int size);
+00087 
+00088 #ifdef LWIP_COMPAT_SOCKETS
+00089 #define accept(a,b,c)         lwip_accept(a,b,c)
+00090 #define bind(a,b,c)           lwip_bind(a,b,c)
+00091 #define close(s)              lwip_close(s)
+00092 #define connect(a,b,c)        lwip_connect(a,b,c)
+00093 #define listen(a,b)           lwip_listen(a,b)
+00094 #define recv(a,b,c,d)         lwip_recv(a,b,c,d)
+00095 #define read(a,b,c)           lwip_read(a,b,c)
+00096 #define recvfrom(a,b,c,d,e,f) lwip_recvfrom(a,b,c,d,e,f)
+00097 #define send(a,b,c,d)         lwip_send(a,b,c,d)
+00098 #define sendto(a,b,c,d,e,f)   lwip_sendto(a,b,c,d,e,f)
+00099 #define socket(a,b,c)         lwip_socket(a,b,c)
+00100 #define write(a,b,c)          lwip_write(a,b,c)
+00101 #endif /* LWIP_NO_COMPAT_SOCKETS */
+00102 
+00103 #endif /* __LWIP_SOCKETS_H__ */
+00104 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/stats_8h-source.html b/doc/doxygen/html/stats_8h-source.html new file mode 100644 index 0000000..56aceca --- /dev/null +++ b/doc/doxygen/html/stats_8h-source.html @@ -0,0 +1,124 @@ + + +Ubixos: stats.h Source File + + + +

stats.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_STATS_H__
+00036 #define __LWIP_STATS_H__
+00037 
+00038 #include "net/opt.h"
+00039 #include "net/arch/cc.h"
+00040 
+00041 #include "net/memp.h"
+00042 
+00043 #ifdef STATS
+00044 
+00045 struct stats_proto {
+00046   uInt16 xmit;    /* Transmitted packets. */
+00047   uInt16 rexmit;  /* Retransmitted packets. */
+00048   uInt16 recv;    /* Received packets. */
+00049   uInt16 fw;      /* Forwarded packets. */
+00050   uInt16 drop;    /* Dropped packets. */
+00051   uInt16 chkerr;  /* Checksum error. */
+00052   uInt16 lenerr;  /* Invalid length error. */
+00053   uInt16 memerr;  /* Out of memory error. */
+00054   uInt16 rterr;   /* Routing error. */
+00055   uInt16 proterr; /* Protocol error. */
+00056   uInt16 opterr;  /* Error in options. */
+00057   uInt16 err;     /* Misc error. */
+00058   uInt16 cachehit;
+00059 };
+00060 
+00061 struct stats_mem {
+00062   uInt16 avail;
+00063   uInt16 used;
+00064   uInt16 max;  
+00065   uInt16 err;
+00066   uInt16 reclaimed;
+00067 };
+00068 
+00069 struct stats_pbuf {
+00070   uInt16 avail;
+00071   uInt16 used;
+00072   uInt16 max;  
+00073   uInt16 err;
+00074   uInt16 reclaimed;
+00075 
+00076   uInt16 alloc_locked;
+00077   uInt16 refresh_locked;
+00078 };
+00079 
+00080 struct stats_syselem {
+00081   uInt16 used;
+00082   uInt16 max;
+00083   uInt16 err;
+00084 };
+00085 
+00086 struct stats_sys {
+00087   struct stats_syselem sem;
+00088   struct stats_syselem mbox;
+00089 };
+00090 
+00091 struct stats_ {
+00092   struct stats_proto link;
+00093   struct stats_proto ip;
+00094   struct stats_proto icmp;
+00095   struct stats_proto udp;
+00096   struct stats_proto tcp;
+00097   struct stats_pbuf pbuf;
+00098   struct stats_mem mem;
+00099   struct stats_mem memp[MEMP_MAX];
+00100   struct stats_sys sys;
+00101 };
+00102 
+00103 extern struct stats_ stats;
+00104 
+00105 #endif /* STATS */
+00106 
+00107 void stats_init(void);
+00108 #endif /* __LWIP_STATS_H__ */
+00109 
+00110 
+00111 
+00112 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/stdarg_8h-source.html b/doc/doxygen/html/stdarg_8h-source.html new file mode 100644 index 0000000..666d2bf --- /dev/null +++ b/doc/doxygen/html/stdarg_8h-source.html @@ -0,0 +1,55 @@ + + +Ubixos: stdarg.h Source File + + + +

stdarg.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _STDARG_H
+00025 #define _STDARG_H
+00026 
+00027 typedef char *vaList[1];
+00028 
+00029 #define vaStart(ap, parm)  ((ap)[0] = (char *) &parm \
+00030          + ((sizeof(parm) + sizeof(int) - 1) & ~(sizeof(int) - 1)), (void) 0)
+00031 
+00032 #define vaArg(ap, type)  ((ap)[0] += \
+00033          ((sizeof(type) + sizeof(int) - 1) & ~(sizeof(int) - 1)), \
+00034         (*(type *) ((ap)[0] \
+00035          - ((sizeof(type) + sizeof(int) - 1) & ~(sizeof(int) - 1)) )))
+00036 
+00037 #define vaEnd(ap)   ((ap)[0] = 0, (void) 0)
+00038 
+00039 
+00040 int vsprintf(char *buf, const char *fmt, vaList args);
+00041 
+00042 #endif
+00043 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/string_8h-source.html b/doc/doxygen/html/string_8h-source.html new file mode 100644 index 0000000..1989989 --- /dev/null +++ b/doc/doxygen/html/string_8h-source.html @@ -0,0 +1,48 @@ + + +Ubixos: string.h Source File + + + +

string.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _STRING_H
+00025 #define _STRING_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 void * kmemcpy(void * dst, const void * src, size_t length);
+00030 void *kmemset(void * dst, int c, size_t length);
+00031 int kstrlen(const char * string);
+00032 
+00033 int sprintf(char * str, const char * format, ...);
+00034 
+00035 #endif
+00036 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/sys_8h-source.html b/doc/doxygen/html/sys_8h-source.html new file mode 100644 index 0000000..252ebe6 --- /dev/null +++ b/doc/doxygen/html/sys_8h-source.html @@ -0,0 +1,105 @@ + + +Ubixos: sys.h Source File + + + +

sys.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_SYS_H__
+00036 #define __LWIP_SYS_H__
+00037 
+00038 #include "arch/cc.h"
+00039 #include "arch/sys_arch.h"
+00040 
+00041 typedef void (* sys_timeout_handler)(void *arg);
+00042 
+00043 struct sys_timeout {
+00044   struct sys_timeout *next;
+00045   uInt16 time;
+00046   sys_timeout_handler h;
+00047   void *arg;
+00048 };
+00049 
+00050 struct sys_timeouts {
+00051   struct sys_timeout *next;
+00052 };
+00053 
+00054 /* sys_init() must be called before anthing else. */
+00055 void sys_init(void);
+00056 
+00057 /*
+00058  * sys_timeout():
+00059  *
+00060  * Schedule a timeout a specified amount of milliseconds in the
+00061  * future. When the timeout occurs, the specified timeout handler will
+00062  * be called. The handler will be passed the "arg" argument when
+00063  * called.
+00064  *
+00065  */
+00066 void sys_timeout(uInt16 msecs, sys_timeout_handler h, void *arg);
+00067 struct sys_timeouts *sys_arch_timeouts(void);
+00068 
+00069 /* Semaphore functions. */
+00070 sys_sem_t sys_sem_new(uInt8 count);
+00071 void sys_sem_signal(sys_sem_t sem);
+00072 uInt16 sys_arch_sem_wait(sys_sem_t sem, uInt16 timeout);
+00073 void sys_sem_free(sys_sem_t sem);
+00074 
+00075 void sys_sem_wait(sys_sem_t sem);
+00076 
+00077 /* Mailbox functions. */
+00078 sys_mbox_t sys_mbox_new(void);
+00079 void sys_mbox_post(sys_mbox_t mbox, void *msg);
+00080 uInt16 sys_arch_mbox_fetch(sys_mbox_t mbox, void **msg, uInt16 timeout);
+00081 void sys_mbox_free(sys_mbox_t mbox);
+00082 
+00083 void sys_mbox_fetch(sys_mbox_t mbox, void **msg);
+00084 
+00085 /* Thread functions. */
+00086 void sys_thread_new(void (* thread)(void *arg), void *arg);
+00087 
+00088 /* The following functions are used only in Unix code, and
+00089    can be omitted when porting the stack. */
+00090 /* Returns the current time in microseconds. */
+00091 unsigned long sys_now(void);
+00092 
+00093 #endif /* __LWIP_SYS_H__ */
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/sys__arch_8h-source.html b/doc/doxygen/html/sys__arch_8h-source.html new file mode 100644 index 0000000..144ec81 --- /dev/null +++ b/doc/doxygen/html/sys__arch_8h-source.html @@ -0,0 +1,63 @@ + + +Ubixos: sys_arch.h Source File + + + +

sys_arch.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __ARCH_SYS_ARCH_H__
+00036 #define __ARCH_SYS_ARCH_H__
+00037 
+00038 #define SYS_MBOX_NULL NULL
+00039 #define SYS_SEM_NULL  NULL
+00040 
+00041 struct sys_sem;
+00042 typedef struct sys_sem * sys_sem_t;
+00043 
+00044 struct sys_mbox;
+00045 typedef struct sys_mbox *sys_mbox_t;
+00046 
+00047 struct sys_thread;
+00048 typedef struct sys_thread * sys_thread_t;
+00049 
+00050 #endif /* __ARCH_SYS_ARCH_H__ */
+00051 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/syscall_8h-source.html b/doc/doxygen/html/syscall_8h-source.html new file mode 100644 index 0000000..5d51c54 --- /dev/null +++ b/doc/doxygen/html/syscall_8h-source.html @@ -0,0 +1,43 @@ + + +Ubixos: syscall.h Source File + + + +

syscall.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _SYSCALL_H
+00025 #define _SYSCALL_H
+00026 
+00027 void _sysCall();
+00028 void invalidCall();
+00029 
+00030 #endif
+00031 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/syscalls_8h-source.html b/doc/doxygen/html/syscalls_8h-source.html new file mode 100644 index 0000000..f6043da --- /dev/null +++ b/doc/doxygen/html/syscalls_8h-source.html @@ -0,0 +1,128 @@ + + +Ubixos: syscalls.h Source File + + + +

syscalls.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _SYSCALLS_H
+00025 #define _SYSCALLS_H
+00026 
+00027 #include <ubixos/sched.h>
+00028 #include <vfs/file.h>
+00029 
+00030 void sysGetpid();
+00031 void sysExit();
+00032 void sysExec();
+00033 void sysFork();
+00034 void sysCheckPid();
+00035 void sysGetFreePage();
+00036 
+00037 void sysFwrite();
+00038 void sysFgetc();
+00039 void sysFopen();
+00040 void sysFread();
+00041 void sysFclose();
+00042 void sysSchedYield();
+00043 void sysFseek();
+00044 void sysMkDir();
+00045 void sysRmDir();
+00046 void sysGetUid();
+00047 void sysGetGid();
+00048 void sysSetUid();
+00049 void sysSetGid();
+00050 void sysSDE();
+00051 void sysGetDrives();
+00052 void sysGetCwd();
+00053 void sysChDir();
+00054 void sysGetUptime();
+00055 void sysGetTime();
+00056 void sysStartSDE();
+00057 void sysUnlink();
+00058 
+00059 typedef void (*functionPTR)();
+00060 
+00061 functionPTR systemCalls[] = {
+00062   invalidCall,      
+00063   sysGetpid,        
+00064   sysExit,          
+00065   sysExec,          
+00066   sysFork,          
+00067   sysFgetc,         
+00068   sysCheckPid,      
+00069   sysGetFreePage,   
+00070   sysFopen,         
+00071   invalidCall,      
+00072   sysFclose,        
+00073   sysSchedYield,    
+00074   invalidCall,      
+00075   invalidCall,      
+00076   invalidCall,      
+00077   invalidCall,      
+00078   invalidCall,      
+00079   invalidCall,      
+00080   invalidCall,      
+00081   invalidCall,      
+00082   sysFopen,         
+00083   sysFclose,        
+00084   sysFread,         
+00085   sysFwrite,        
+00086   sysMkDir,         
+00087   sysRmDir,         
+00088   sysGetCwd,        
+00089   sysFseek,         
+00090   sysChDir,         
+00091   sysMkDir,         
+00092   sysUnlink,        
+00093   sysGetUid,        
+00094   sysGetGid,        
+00095   sysSetUid,        
+00096   sysSetGid,        
+00097   invalidCall,      
+00098   invalidCall,      
+00099   invalidCall,      
+00100   invalidCall,      
+00101   invalidCall,      
+00102   sysSDE,           
+00103   invalidCall,      
+00104   invalidCall,      
+00105   invalidCall,      
+00106   invalidCall,      
+00107   sysGetDrives,     
+00108   sysGetUptime,     
+00109   sysGetTime,       
+00110   sysStartSDE,      
+00111   };
+00112 
+00113 int totalCalls = sizeof(systemCalls)/sizeof(functionPTR);
+00114 
+00115 #endif
+00116 
+

Generated on Wed Apr 28 17:49:40 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/tcp_8h-source.html b/doc/doxygen/html/tcp_8h-source.html new file mode 100644 index 0000000..c28d817 --- /dev/null +++ b/doc/doxygen/html/tcp_8h-source.html @@ -0,0 +1,413 @@ + + +Ubixos: tcp.h Source File + + + +

tcp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_TCP_H__
+00036 #define __LWIP_TCP_H__
+00037 
+00038 #include "net/sys.h"
+00039 #include "net/mem.h"
+00040 
+00041 #include "net/pbuf.h"
+00042 #include "net/opt.h"
+00043 //UBU
+00044 #include "net/ipv4/ip.h"
+00045 //UBU
+00046 #include "net/ipv4/icmp.h"
+00047 
+00048 #include "net/sys.h"
+00049 
+00050 #include "net/err.h"
+00051 
+00052 struct tcp_pcb;
+00053 
+00054 /* Functions for interfacing with TCP: */
+00055 
+00056 /* Lower layer interface to TCP: */
+00057 void             tcp_init    (void);  /* Must be called first to
+00058                                          initialize TCP. */
+00059 void             tcp_tmr     (void);  /* Must be called every
+00060                                          TCP_TMR_INTERVAL
+00061                                          ms. (Typically 100 ms). */
+00062 /* Application program's interface: */
+00063 struct tcp_pcb * tcp_new     (void);
+00064 
+00065 void             tcp_arg     (struct tcp_pcb *pcb, void *arg);
+00066 void             tcp_accept  (struct tcp_pcb *pcb,
+00067                               err_t (* accept)(void *arg, struct tcp_pcb *newpcb,
+00068                                                err_t err));
+00069 void             tcp_recv    (struct tcp_pcb *pcb,
+00070                               err_t (* recv)(void *arg, struct tcp_pcb *tpcb,
+00071                                   struct pbuf *p, err_t err));
+00072 void             tcp_sent    (struct tcp_pcb *pcb,
+00073                               err_t (* sent)(void *arg, struct tcp_pcb *tpcb,
+00074                                              uInt16 len));
+00075 void             tcp_poll    (struct tcp_pcb *pcb,
+00076                               err_t (* poll)(void *arg, struct tcp_pcb *tpcb),
+00077                               uInt8 interval);
+00078 void             tcp_err     (struct tcp_pcb *pcb,
+00079                               void (* err)(void *arg, err_t err));
+00080 
+00081 #define          tcp_sndbuf(pcb)   ((pcb)->snd_buf)
+00082 
+00083 void             tcp_recved  (struct tcp_pcb *pcb, uInt16 len);
+00084 err_t            tcp_bind    (struct tcp_pcb *pcb, struct ip_addr *ipaddr,
+00085                               uInt16 port);
+00086 err_t            tcp_connect (struct tcp_pcb *pcb, struct ip_addr *ipaddr,
+00087                               uInt16 port, err_t (* connected)(void *arg,
+00088                                                               struct tcp_pcb *tpcb,
+00089                                                               err_t err));
+00090 struct tcp_pcb * tcp_listen  (struct tcp_pcb *pcb);
+00091 void             tcp_abort   (struct tcp_pcb *pcb);
+00092 err_t            tcp_close   (struct tcp_pcb *pcb);
+00093 err_t            tcp_write   (struct tcp_pcb *pcb, const void *dataptr, uInt16 len,
+00094                               uInt8 copy);
+00095 
+00096 /* It is also possible to call these two functions at the right
+00097    intervals (instead of calling tcp_tmr()). */
+00098 void             tcp_slowtmr (void);
+00099 void             tcp_fasttmr (void);
+00100 
+00101 
+00102 /* Only used by IP to pass a TCP segment to TCP: */
+00103 void             tcp_input   (struct pbuf *p, struct netif *inp);
+00104 /* Used within the TCP code only: */
+00105 err_t            tcp_output  (struct tcp_pcb *pcb);
+00106 
+00107 
+00108 
+00109 
+00110 #define TCP_SEQ_LT(a,b)     ((Int32)((a)-(b)) < 0)
+00111 #define TCP_SEQ_LEQ(a,b)    ((Int32)((a)-(b)) <= 0)
+00112 #define TCP_SEQ_GT(a,b)     ((Int32)((a)-(b)) > 0)
+00113 #define TCP_SEQ_GEQ(a,b)    ((Int32)((a)-(b)) >= 0)
+00114 
+00115 #define TCP_FIN 0x01
+00116 #define TCP_SYN 0x02
+00117 #define TCP_RST 0x04
+00118 #define TCP_PSH 0x08
+00119 #define TCP_ACK 0x10
+00120 #define TCP_URG 0x20
+00121 
+00122 /* Length of the TCP header, excluding options. */
+00123 #define TCP_HLEN 20
+00124 
+00125 #define TCP_TMR_INTERVAL       100  /* The TCP timer interval in
+00126                                        milliseconds. */
+00127 
+00128 #define TCP_FAST_INTERVAL      200  /* the fine grained timeout in
+00129                                        milliseconds */
+00130 #define TCP_SLOW_INTERVAL      500  /* the coarse grained timeout in
+00131                                        milliseconds */
+00132 #define TCP_FIN_WAIT_TIMEOUT 20000 /* milliseconds */
+00133 #define TCP_SYN_RCVD_TIMEOUT 20000 /* milliseconds */
+00134 
+00135 #define TCP_OOSEQ_TIMEOUT        6 /* x RTO */
+00136 
+00137 #define TCP_MSL 60000  /* The maximum segment lifetime in microseconds */
+00138 
+00139 struct tcp_hdr {
+00140   PACK_STRUCT_FIELD(uInt16 src);
+00141   PACK_STRUCT_FIELD(uInt16 dest);
+00142   PACK_STRUCT_FIELD(uInt32 seqno);
+00143   PACK_STRUCT_FIELD(uInt32 ackno);
+00144   PACK_STRUCT_FIELD(uInt16 _offset_flags);
+00145   PACK_STRUCT_FIELD(uInt16 wnd);
+00146   PACK_STRUCT_FIELD(uInt16 chksum);
+00147   PACK_STRUCT_FIELD(uInt16 urgp);
+00148 } PACK_STRUCT_STRUCT;
+00149 
+00150 #define TCPH_OFFSET(hdr) (NTOHS((hdr)->_offset_flags) >> 8)
+00151 #define TCPH_FLAGS(hdr) (NTOHS((hdr)->_offset_flags) & 0xff)
+00152 
+00153 #define TCPH_OFFSET_SET(hdr, offset) (hdr)->_offset_flags = HTONS(((offset) << 8) | TCPH_FLAGS(hdr))
+00154 #define TCPH_FLAGS_SET(hdr, flags) (hdr)->_offset_flags = HTONS((TCPH_OFFSET(hdr) << 8) | (flags))
+00155 
+00156 #define TCP_TCPLEN(seg) ((seg)->len + ((TCPH_FLAGS((seg)->tcphdr) & TCP_FIN || \
+00157                                         TCPH_FLAGS((seg)->tcphdr) & TCP_SYN)? 1: 0))
+00158 
+00159 enum tcp_state {
+00160   CLOSED      = 0,
+00161   LISTEN      = 1,
+00162   SYN_SENT    = 2,
+00163   SYN_RCVD    = 3,
+00164   ESTABLISHED = 4,
+00165   FIN_WAIT_1  = 5,
+00166   FIN_WAIT_2  = 6,
+00167   CLOSE_WAIT  = 7,
+00168   CLOSING     = 8,
+00169   LAST_ACK    = 9,
+00170   TIME_WAIT   = 10
+00171 };
+00172 
+00173 
+00174 /* the TCP protocol control block */
+00175 struct tcp_pcb {
+00176   struct tcp_pcb *next;   /* for the linked list */
+00177 
+00178   enum tcp_state state;   /* TCP state */
+00179 
+00180   void *callback_arg;
+00181   
+00182   /* Function to call when a listener has been connected. */
+00183   err_t (* accept)(void *arg, struct tcp_pcb *newpcb, err_t err);
+00184 
+00185   struct ip_addr local_ip;
+00186   uInt16 local_port;
+00187   
+00188   struct ip_addr remote_ip;
+00189   uInt16 remote_port;
+00190   
+00191   /* receiver varables */
+00192   uInt32 rcv_nxt;   /* next seqno expected */
+00193   uInt16 rcv_wnd;   /* receiver window */
+00194 
+00195   /* Timers */
+00196   uInt16 tmr;
+00197 
+00198   /* Retransmission timer. */
+00199   uInt8 rtime;
+00200   
+00201   uInt16 mss;   /* maximum segment size */
+00202 
+00203   uInt8 flags;
+00204 #define TF_ACK_DELAY 0x01   /* Delayed ACK. */
+00205 #define TF_ACK_NOW   0x02   /* Immediate ACK. */
+00206 #define TF_INFR      0x04   /* In fast recovery. */
+00207 #define TF_RESET     0x08   /* Connection was reset. */
+00208 #define TF_CLOSED    0x10   /* Connection was sucessfully closed. */
+00209 #define TF_GOT_FIN   0x20   /* Connection was closed by the remote end. */
+00210   
+00211   /* RTT estimation variables. */
+00212   uInt16 rttest; /* RTT estimate in 500ms ticks */
+00213   uInt32 rtseq;  /* sequence number being timed */
+00214   Int32 sa, sv;
+00215 
+00216   uInt16 rto;    /* retransmission time-out */
+00217   uInt8 nrtx;    /* number of retransmissions */
+00218 
+00219   /* fast retransmit/recovery */
+00220   uInt32 lastack; /* Highest acknowledged seqno. */
+00221   uInt8 dupacks;
+00222   
+00223   /* congestion avoidance/control variables */
+00224   uInt16 cwnd;  
+00225   uInt16 ssthresh;
+00226 
+00227   /* sender variables */
+00228   uInt32 snd_nxt,       /* next seqno to be sent */
+00229     snd_max,       /* Highest seqno sent. */
+00230     snd_wnd,       /* sender window */
+00231     snd_wl1, snd_wl2,
+00232     snd_lbb;      
+00233 
+00234   uInt16 snd_buf;   /* Avaliable buffer space for sending. */
+00235   uInt8 snd_queuelen;
+00236 
+00237   /* Function to be called when more send buffer space is avaliable. */
+00238   err_t (* sent)(void *arg, struct tcp_pcb *pcb, uInt16 space);
+00239   uInt16 acked;
+00240   
+00241   /* Function to be called when (in-sequence) data has arrived. */
+00242   err_t (* recv)(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err);
+00243   struct pbuf *recv_data;
+00244 
+00245   /* Function to be called when a connection has been set up. */
+00246   err_t (* connected)(void *arg, struct tcp_pcb *pcb, err_t err);
+00247 
+00248   /* Function which is called periodically. */
+00249   err_t (* poll)(void *arg, struct tcp_pcb *pcb);
+00250 
+00251   /* Function to be called whenever a fatal error occurs. */
+00252   void (* errf)(void *arg, err_t err);
+00253   
+00254   uInt8 polltmr, pollinterval;
+00255   
+00256   /* These are ordered by sequence number: */
+00257   struct tcp_seg *unsent;   /* Unsent (queued) segments. */
+00258   struct tcp_seg *unacked;  /* Sent but unacknowledged segments. */
+00259 #if TCP_QUEUE_OOSEQ  
+00260   struct tcp_seg *ooseq;    /* Received out of sequence segments. */
+00261 #endif /* TCP_QUEUE_OOSEQ */
+00262 
+00263 };
+00264 
+00265 struct tcp_pcb_listen {  
+00266   struct tcp_pcb_listen *next;   /* for the linked list */
+00267   
+00268   enum tcp_state state;   /* TCP state */
+00269 
+00270   void *callback_arg;
+00271   
+00272   /* Function to call when a listener has been connected. */
+00273   void (* accept)(void *arg, struct tcp_pcb *newpcb);
+00274 
+00275   struct ip_addr local_ip;
+00276   uInt16 local_port;
+00277 };
+00278 
+00279 /* This structure is used to repressent TCP segments. */
+00280 struct tcp_seg {
+00281   struct tcp_seg *next;    /* used when putting segements on a queue */
+00282   struct pbuf *p;          /* buffer containing data + TCP header */
+00283   void *dataptr;           /* pointer to the TCP data in the pbuf */
+00284   uInt16 len;               /* the TCP length of this segment */
+00285   struct tcp_hdr *tcphdr;  /* the TCP header */
+00286 };
+00287 
+00288 /* Internal functions and global variables: */
+00289 struct tcp_pcb *tcp_pcb_copy(struct tcp_pcb *pcb);
+00290 void tcp_pcb_purge(struct tcp_pcb *pcb);
+00291 void tcp_pcb_remove(struct tcp_pcb **pcblist, struct tcp_pcb *pcb);
+00292 
+00293 uInt8 tcp_segs_free(struct tcp_seg *seg);
+00294 uInt8 tcp_seg_free(struct tcp_seg *seg);
+00295 struct tcp_seg *tcp_seg_copy(struct tcp_seg *seg);
+00296 
+00297 #define tcp_ack(pcb)     if((pcb)->flags & TF_ACK_DELAY) { \
+00298                             (pcb)->flags |= TF_ACK_NOW; \
+00299                             tcp_output(pcb); \
+00300                          } else { \
+00301                             (pcb)->flags |= TF_ACK_DELAY; \
+00302                          }
+00303 
+00304 #define tcp_ack_now(pcb) (pcb)->flags |= TF_ACK_NOW; \
+00305                          tcp_output(pcb)
+00306 
+00307 err_t tcp_send_ctrl(struct tcp_pcb *pcb, uInt8 flags);
+00308 err_t tcp_enqueue(struct tcp_pcb *pcb, void *dataptr, uInt16 len,
+00309                 uInt8 flags, uInt8 copy,
+00310                 uInt8 *optdata, uInt8 optlen);
+00311 
+00312 void tcp_rexmit_seg(struct tcp_pcb *pcb, struct tcp_seg *seg);
+00313 
+00314 void tcp_rst(uInt32 seqno, uInt32 ackno,
+00315              struct ip_addr *local_ip, struct ip_addr *remote_ip,
+00316              uInt16 local_port, uInt16 remote_port);
+00317 
+00318 uInt32 tcp_next_iss(void);
+00319 
+00320 extern uInt32 tcp_ticks;
+00321 
+00322 #if TCP_DEBUG || TCP_INPUT_DEBUG || TCP_OUTPUT_DEBUG
+00323 void tcp_debug_print(struct tcp_hdr *tcphdr);
+00324 void tcp_debug_print_flags(uInt8 flags);
+00325 void tcp_debug_print_state(enum tcp_state s);
+00326 void tcp_debug_print_pcbs(void);
+00327 int tcp_pcbs_sane(void);
+00328 #else
+00329 #define tcp_pcbs_sane() 1
+00330 #endif /* TCP_DEBUG */
+00331 
+00332 
+00333 /* The TCP PCB lists. */
+00334 extern struct tcp_pcb_listen *tcp_listen_pcbs;  /* List of all TCP PCBs in LISTEN state. */
+00335 extern struct tcp_pcb *tcp_active_pcbs;  /* List of all TCP PCBs that are in a
+00336                                             state in which they accept or send
+00337                                             data. */
+00338 extern struct tcp_pcb *tcp_tw_pcbs;      /* List of all TCP PCBs in TIME-WAIT. */
+00339 
+00340 extern struct tcp_pcb *tcp_tmp_pcb;      /* Only used for temporary storage. */
+00341 
+00342 /* Axoims about the above lists:   
+00343    1) Every TCP PCB that is not CLOSED is in one of the lists.
+00344    2) A PCB is only in one of the lists.
+00345    3) All PCBs in the tcp_listen_pcbs list is in LISTEN state.
+00346    4) All PCBs in the tcp_tw_pcbs list is in TIME-WAIT state.
+00347 */
+00348 
+00349 /* Define two macros, TCP_REG and TCP_RMV that registers a TCP PCB
+00350    with a PCB list or removes a PCB from a list, respectively. */
+00351 #ifdef LWIP_DEBUG
+00352 #define TCP_REG(pcbs, npcb) do {\
+00353                             DEBUGF(TCP_DEBUG, ("TCP_REG %p local port %d\n", npcb, npcb->local_port)); \
+00354                             for(tcp_tmp_pcb = *pcbs; \
+00355                                   tcp_tmp_pcb != NULL; \
+00356                                 tcp_tmp_pcb = tcp_tmp_pcb->next) { \
+00357                                 ASSERT("TCP_REG: already registered\n", tcp_tmp_pcb != npcb); \
+00358                             } \
+00359                             ASSERT("TCP_REG: pcb->state != CLOSED", npcb->state != CLOSED); \
+00360                             npcb->next = *pcbs; \
+00361                             ASSERT("TCP_REG: npcb->next != npcb", npcb->next != npcb); \
+00362                             *pcbs = npcb; \
+00363                             ASSERT("TCP_RMV: tcp_pcbs sane", tcp_pcbs_sane()); \
+00364                             } while(0)
+00365 #define TCP_RMV(pcbs, npcb) do { \
+00366                             ASSERT("TCP_RMV: pcbs != NULL", *pcbs != NULL); \
+00367                             DEBUGF(TCP_DEBUG, ("TCP_RMV: removing %p from %p\n", npcb, *pcbs)); \
+00368                             if(*pcbs == npcb) { \
+00369                                *pcbs = (*pcbs)->next; \
+00370                             } else for(tcp_tmp_pcb = *pcbs; tcp_tmp_pcb != NULL; tcp_tmp_pcb = tcp_tmp_pcb->next) { \
+00371                                if(tcp_tmp_pcb->next != NULL && tcp_tmp_pcb->next == npcb) { \
+00372                                   tcp_tmp_pcb->next = npcb->next; \
+00373                                   break; \
+00374                                } \
+00375                             } \
+00376                             npcb->next = NULL; \
+00377                             ASSERT("TCP_RMV: tcp_pcbs sane", tcp_pcbs_sane()); \
+00378                             DEBUGF(TCP_DEBUG, ("TCP_RMV: removed %p from %p\n", npcb, *pcbs)); \
+00379                             } while(0)
+00380 
+00381 #else /* LWIP_DEBUG */
+00382 #define TCP_REG(pcbs, npcb) do { \
+00383                             npcb->next = *pcbs; \
+00384                             *pcbs = npcb; \
+00385                             } while(0)
+00386 #define TCP_RMV(pcbs, npcb) do { \
+00387                             if(*pcbs == npcb) { \
+00388                                *pcbs = (*pcbs)->next; \
+00389                             } else for(tcp_tmp_pcb = *pcbs; tcp_tmp_pcb != NULL; tcp_tmp_pcb = tcp_tmp_pcb->next) { \
+00390                                if(tcp_tmp_pcb->next != NULL && tcp_tmp_pcb->next == npcb) { \
+00391                                   tcp_tmp_pcb->next = npcb->next; \
+00392                                   break; \
+00393                                } \
+00394                             } \
+00395                             npcb->next = NULL; \
+00396                             } while(0)
+00397 #endif /* LWIP_DEBUG */
+00398 #endif /* __LWIP_TCP_H__ */
+00399 
+00400 
+00401 
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/tcpdump_8h-source.html b/doc/doxygen/html/tcpdump_8h-source.html new file mode 100644 index 0000000..21ad790 --- /dev/null +++ b/doc/doxygen/html/tcpdump_8h-source.html @@ -0,0 +1,55 @@ + + +Ubixos: tcpdump.h Source File + + + +

tcpdump.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __NETIF_TCPDUMP_H__
+00036 #define __NETIF_TCPDUMP_H__
+00037 
+00038 #include "net/pbuf.h"
+00039 
+00040 void tcpdump_init(void);
+00041 void tcpdump(struct pbuf *p);
+00042 
+00043 #endif /* __NETIF_TCPDUMP_H__ */
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/tcpip_8h-source.html b/doc/doxygen/html/tcpip_8h-source.html new file mode 100644 index 0000000..6fc450e --- /dev/null +++ b/doc/doxygen/html/tcpip_8h-source.html @@ -0,0 +1,75 @@ + + +Ubixos: tcpip.h Source File + + + +

tcpip.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_TCPIP_H__
+00036 #define __LWIP_TCPIP_H__
+00037 
+00038 #include "net/api_msg.h"
+00039 #include "net/pbuf.h"
+00040 
+00041 void tcpip_init(void (* tcpip_init_done)(void *), void *arg);
+00042 void tcpip_apimsg(struct api_msg *apimsg);
+00043 err_t tcpip_input(struct pbuf *p, struct netif *inp);
+00044 
+00045 enum tcpip_msg_type {
+00046   TCPIP_MSG_API,
+00047   TCPIP_MSG_INPUT
+00048 };
+00049 
+00050 struct tcpip_msg {
+00051   enum tcpip_msg_type type;
+00052   sys_sem_t *sem;
+00053   union {
+00054     struct api_msg *apimsg;
+00055     struct {
+00056       struct pbuf *p;
+00057       struct netif *netif;
+00058     } inp;
+00059   } msg;
+00060 };
+00061 
+00062 
+00063 #endif /* __LWIP_TCPIP_H__ */
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/time_8h-source.html b/doc/doxygen/html/time_8h-source.html new file mode 100644 index 0000000..5307902 --- /dev/null +++ b/doc/doxygen/html/time_8h-source.html @@ -0,0 +1,96 @@ + + +Ubixos: time.h Source File + + + +

time.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _TIME_H
+00025 #define _TIME_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <sys/io.h>
+00029 
+00030 typedef long suseconds_t;
+00031 
+00032 #define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10)
+00033 
+00034 #define MINUTE 60
+00035 #define HOUR (60*MINUTE)
+00036 #define DAY (24*HOUR)
+00037 #define YEAR (365*DAY)
+00038 
+00039 #ifndef _TIME_T_DECLARED
+00040 typedef __time_t        time_t;
+00041 #define _TIME_T_DECLARED
+00042 #endif
+00043 
+00044 struct timespec {
+00045         time_t  tv_sec;         /* seconds */
+00046         long    tv_nsec;        /* and nanoseconds */
+00047 };
+00048 
+00049 
+00050 
+00051 struct timeStruct {
+00052   int sec;
+00053   int min;
+00054   int hour;
+00055   int day;
+00056   int mon;
+00057   int year;
+00058   };
+00059 
+00060 
+00061 struct timezone {
+00062   int     tz_minuteswest; /* minutes west of Greenwich */
+00063   int     tz_dsttime;     /* type of dst correction */
+00064   };
+00065 
+00066 struct timeval {
+00067   long            tv_sec;         /* seconds (XXX should be time_t) */
+00068   suseconds_t     tv_usec;        /* and microseconds */
+00069   };
+00070 
+00071 int gettimeofday(struct timeval *tp,struct timezone *tzp);
+00072 
+00073 
+00074 
+00075 int timeInit();
+00076 int timeCmosRead(int);
+00077 uInt32 timeMake(struct timeStruct *time);
+00078 
+00079 #endif
+00080 
+00081 /***
+00082  END
+00083  ***/
+00084 
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/times_8h-source.html b/doc/doxygen/html/times_8h-source.html new file mode 100644 index 0000000..14ae5c8 --- /dev/null +++ b/doc/doxygen/html/times_8h-source.html @@ -0,0 +1,59 @@ + + +Ubixos: times.h Source File + + + +

times.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _TIMES_H
+00025 #define _TIMES_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <sys/_types.h>
+00029 
+00030 #ifndef _CLOCK_T_DECLARED
+00031 typedef __clock_t       clock_t;
+00032 #define _CLOCK_T_DECLARED
+00033 #endif
+00034 
+00035 struct tms {
+00036         clock_t tms_utime;      /* User CPU time */
+00037         clock_t tms_stime;      /* System CPU time */
+00038         clock_t tms_cutime;     /* User CPU time of terminated child procs */
+00039         clock_t tms_cstime;     /* System CPU time of terminated child procs */
+00040 };
+00041 
+00042 #endif
+00043 
+00044 /***
+00045  END
+00046  ***/
+00047 
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/tss_8h-source.html b/doc/doxygen/html/tss_8h-source.html new file mode 100644 index 0000000..431c9cc --- /dev/null +++ b/doc/doxygen/html/tss_8h-source.html @@ -0,0 +1,91 @@ + + +Ubixos: tss.h Source File + + + +

tss.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _TSS_H
+00025 #define _TSS_H
+00026 
+00027 struct tssStruct {
+00028   short back_link;
+00029   short back_link_reserved;
+00030   long  esp0;
+00031   short ss0;
+00032   short ss0_reserved;
+00033   long  esp1;
+00034   short ss1;
+00035   short ss1_reserved;
+00036   long  esp2;
+00037   short ss2;
+00038   short ss2_reserved;
+00039   long  cr3;
+00040   long  eip;
+00041   long  eflags;
+00042   long  eax,ecx,edx,ebx;
+00043   long  esp;
+00044   long  ebp;
+00045   long  esi;
+00046   long  edi;
+00047   short es;
+00048   short es_reserved;
+00049   short cs;
+00050   short cs_reserved;
+00051   short ss;
+00052   short ss_reserved;
+00053   short ds;
+00054   short ds_reserved;
+00055   short fs;
+00056   short fs_reserved;
+00057   short gs;
+00058   short gs_reserved;
+00059   short ldt;
+00060   short ldt_reserved;
+00061   //long  trace_bitmap;   /* bits: trace 0, bitmap 16-31 */
+00062   short trace_bitmap;
+00063   short io_map;
+00064   char  io_space[8192];
+00065   };
+00066 
+00067 struct i387Struct {
+00068   long cwd;
+00069   long swd;
+00070   long twd;
+00071   long fip;
+00072   long fcs;
+00073   long foo;
+00074   long fos;
+00075   long st_space[20];   /* 8*10 bytes for each FP-reg = 80 bytes */
+00076   };
+00077 
+00078 #endif
+00079 
+

Generated on Wed Apr 28 17:49:41 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/types_8h-source.html b/doc/doxygen/html/types_8h-source.html new file mode 100644 index 0000000..37c7736 --- /dev/null +++ b/doc/doxygen/html/types_8h-source.html @@ -0,0 +1,73 @@ + + +Ubixos: types.h Source File + + + +

types.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _TYPES_H
+00025 #define _TYPES_H
+00026 
+00027 #include <sys/_types.h>
+00028 
+00029 #ifndef NULL
+00030 #define NULL 0x0
+00031 #endif
+00032 
+00033 typedef unsigned char byte;           /* 8-bit byte */
+00034 typedef unsigned short word;          /* 16-bit word */
+00035 typedef unsigned long dWord;          /* 32-bit dword */
+00036 
+00037 typedef unsigned char uChar;
+00038 typedef unsigned long uLong;
+00039 typedef unsigned short uShort;
+00040 typedef unsigned int uInt;
+00041 
+00042 typedef unsigned char  uInt8;
+00043 typedef unsigned short uInt16;
+00044 typedef unsigned long  uInt32;
+00045 typedef char Int8;
+00046 typedef short Int16;
+00047 typedef long Int32;
+00048 
+00049 typedef unsigned char uint8_t;
+00050 typedef unsigned short uint16_t;
+00051 typedef unsigned int uint32_t;
+00052 
+00053 typedef int pidType;
+00054 
+00055 typedef int  pid_t;
+00056 typedef int size_t; /* standart */
+00057 #ifndef NOBOOL
+00058 typedef enum { FALSE=0,TRUE=1 } bool;
+00059 #endif
+00060 
+00061 #endif
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/ubthread_8h-source.html b/doc/doxygen/html/ubthread_8h-source.html new file mode 100644 index 0000000..e22128b --- /dev/null +++ b/doc/doxygen/html/ubthread_8h-source.html @@ -0,0 +1,95 @@ + + +Ubixos: ubthread.h Source File + + + +

ubthread.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _UBTHREAD_H
+00025 #define _UBTHREAD_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <ubixos/sched.h>
+00029 #include <ubixos/time.h>
+00030 
+00031 #define ETIMEDOUT -1
+00032 
+00033 #define LOCKED     1
+00034 #define UNLOCKED   0
+00035 
+00036 typedef struct ubthread       *ubthread_t;
+00037 typedef struct ubthread_cond  *ubthread_cond_t;
+00038 typedef struct ubthread_mutex *ubthread_mutex_t;
+00039 
+00040 struct ubthread {
+00041   kTask_t *task;
+00042   };
+00043 
+00044 struct ubthread_cond {
+00045   int   id;
+00046   uInt8 locked;
+00047   };
+00048 
+00049 struct ubthread_mutex {
+00050   int     id;
+00051   uInt8   locked;
+00052   pidType pid;
+00053   };
+00054 
+00055 struct ubthread_list {
+00056   struct ubthread_list *next;
+00057   ubthread_t           thread;
+00058   };
+00059 
+00060 struct ubthread_cond_list {
+00061   struct ubthread_cond_list *next;
+00062   ubthread_cond_t           *cond;
+00063   };
+00064 
+00065 struct ubthread_mutex_list {
+00066   struct ubthread_mutex_list *next;
+00067   ubthread_mutex_t           *mutex;
+00068   };
+00069 
+00070 
+00071 kTask_t *ubthread_self();
+00072 int ubthread_cond_init(ubthread_cond_t *cond,const uInt32 attr);
+00073 int ubthread_mutex_init(ubthread_mutex_t *mutex,const uInt32 attr);
+00074 int ubthread_cond_destroy(ubthread_cond_t *cond);
+00075 int ubthread_mutex_destroy(ubthread_mutex_t *mutex);
+00076 int ubthread_create(kTask_t **thread,const uInt32 *attr,void *start_routine, void *arg);
+00077 int ubthread_mutex_lock(ubthread_mutex_t *mutex);
+00078 int ubthread_mutex_unlock(ubthread_mutex_t *mutex);
+00079 int ubthread_cond_timedwait(ubthread_cond_t *cond, ubthread_mutex_t *mutex, const struct timespec *abstime);
+00080 int ubthread_cond_wait(ubthread_cond_t *cond, ubthread_mutex_t *mutex);
+00081 int ubthread_cond_signal(ubthread_cond_t *cond);
+00082 
+00083 #endif
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/udp_8h-source.html b/doc/doxygen/html/udp_8h-source.html new file mode 100644 index 0000000..2a14338 --- /dev/null +++ b/doc/doxygen/html/udp_8h-source.html @@ -0,0 +1,114 @@ + + +Ubixos: udp.h Source File + + + +

udp.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __LWIP_UDP_H__
+00036 #define __LWIP_UDP_H__
+00037 
+00038 #include "net/arch.h"
+00039 
+00040 #include "net/pbuf.h"
+00041 //UBU 
+00042 #include "net/ipv4/inet.h"
+00043 //UBU
+00044 #include "net/ipv4/ip.h"
+00045 
+00046 #include "net/err.h"
+00047 
+00048 #define UDP_HLEN 8
+00049 
+00050 struct udp_hdr {
+00051   PACK_STRUCT_FIELD(uInt16 src);
+00052   PACK_STRUCT_FIELD(uInt16 dest);  /* src/dest UDP ports */
+00053   PACK_STRUCT_FIELD(uInt16 len);
+00054   PACK_STRUCT_FIELD(uInt16 chksum);
+00055 } PACK_STRUCT_STRUCT;
+00056 
+00057 #define UDP_FLAGS_NOCHKSUM 0x01
+00058 #define UDP_FLAGS_UDPLITE  0x02
+00059 
+00060 struct udp_pcb {
+00061   struct udp_pcb *next;
+00062 
+00063   struct ip_addr local_ip, remote_ip;
+00064   uInt16 local_port, remote_port;
+00065   
+00066   uInt8 flags;
+00067   uInt16 chksum_len;
+00068   
+00069   void (* recv)(void *arg, struct udp_pcb *pcb, struct pbuf *p,
+00070                 struct ip_addr *addr, uInt16 port);
+00071   void *recv_arg;  
+00072 };
+00073 
+00074 /* The following functions is the application layer interface to the
+00075    UDP code. */
+00076 struct udp_pcb * udp_new        (void);
+00077 void             udp_remove     (struct udp_pcb *pcb);
+00078 err_t            udp_bind       (struct udp_pcb *pcb, struct ip_addr *ipaddr,
+00079                                  uInt16 port);
+00080 err_t            udp_connect    (struct udp_pcb *pcb, struct ip_addr *ipaddr,
+00081                                  uInt16 port);
+00082 void             udp_recv       (struct udp_pcb *pcb,
+00083                                  void (* recv)(void *arg, struct udp_pcb *upcb,
+00084                                                struct pbuf *p,
+00085                                                struct ip_addr *addr,
+00086                                                uInt16 port),
+00087                                  void *recv_arg);
+00088 err_t            udp_send       (struct udp_pcb *pcb, struct pbuf *p);
+00089 
+00090 #define          udp_flags(pcb)  ((pcb)->flags)
+00091 #define          udp_setflags(pcb, f)  ((pcb)->flags = (f))
+00092 
+00093 
+00094 /* The following functions is the lower layer interface to UDP. */
+00095 uInt8             udp_lookup     (struct ip_hdr *iphdr, struct netif *inp);
+00096 void             udp_input      (struct pbuf *p, struct netif *inp);
+00097 void             udp_init       (void);
+00098 
+00099 
+00100 #endif /* __LWIP_UDP_H__ */
+00101 
+00102 
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/udpecho_8h-source.html b/doc/doxygen/html/udpecho_8h-source.html new file mode 100644 index 0000000..e882238 --- /dev/null +++ b/doc/doxygen/html/udpecho_8h-source.html @@ -0,0 +1,52 @@ + + +Ubixos: udpecho.h Source File + + + +

udpecho.h

00001 /*
+00002  * Copyright (c) 2001, Swedish Institute of Computer Science.
+00003  * All rights reserved. 
+00004  *
+00005  * Redistribution and use in source and binary forms, with or without 
+00006  * modification, are permitted provided that the following conditions 
+00007  * are met: 
+00008  * 1. Redistributions of source code must retain the above copyright 
+00009  *    notice, this list of conditions and the following disclaimer. 
+00010  * 2. Redistributions in binary form must reproduce the above copyright 
+00011  *    notice, this list of conditions and the following disclaimer in the 
+00012  *    documentation and/or other materials provided with the distribution. 
+00013  * 3. Neither the name of the Institute nor the names of its contributors 
+00014  *    may be used to endorse or promote products derived from this software 
+00015  *    without specific prior written permission. 
+00016  *
+00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+00027  * SUCH DAMAGE. 
+00028  *
+00029  * This file is part of the lwIP TCP/IP stack.
+00030  * 
+00031  * Author: Adam Dunkels <adam@sics.se>
+00032  *
+00033  * $Id$
+00034  */
+00035 #ifndef __UDPECHO_H__
+00036 #define __UDPECHO_H__
+00037 
+00038 void udpecho_init(void);
+00039 
+00040 #endif /* __UDPECHO_H__ */
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/vfs_8h-source.html b/doc/doxygen/html/vfs_8h-source.html new file mode 100644 index 0000000..9650575 --- /dev/null +++ b/doc/doxygen/html/vfs_8h-source.html @@ -0,0 +1,96 @@ + + +Ubixos: vfs.h Source File + + + +

vfs.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _VFS_H
+00025 #define _VFS_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define maxFd   32
+00030 #define fdAvail 1
+00031 #define fdOpen  2
+00032 #define fdRead  3
+00033 #define fdEof   4
+00034 
+00035 
+00036 #define fileRead    0x0001
+00037 #define fileWrite   0x0002
+00038 #define fileBinary  0x0004
+00039 #define fileAppend  0x0008
+00040 
+00041 typedef struct fileDescriptorStruct {
+00042   struct fileDescriptorStruct *prev;
+00043   struct fileDescriptorStruct *next;
+00044   struct mountPoints          *mp;
+00045   uInt16         status;
+00046   uInt16         mode;
+00047   uInt32         offset;
+00048   uInt32         size;
+00049   uInt16         length;
+00050   uInt32         start;
+00051   uInt8          fileName[22];
+00052   char           *buffer;
+00053   uInt32         dirBlock;
+00054   uInt32         perms;
+00055   } fileDescriptor;
+00056 
+00057 struct fileSystem {
+00058   struct fileSystem *prev;
+00059   struct fileSystem *next;
+00060   int               (*vfsInitFS)(void *);
+00061   int               (*vfsRead)(void *,char *,long,long);
+00062   int               (*vfsWrite)(void *,char *,long,long);
+00063   int               (*vfsOpenFile)(void *,void *);
+00064   int               (*vfsUnlink)(char *,void *);
+00065   int               (*vfsMakeDir)(char *,void *);
+00066   int               (*vfsRemDir)(char *);
+00067   int               (*vfsSync)(void);
+00068   int               vfsType;
+00069   };
+00070 
+00071 
+00072 /* VFS Functions */
+00073 int vfsInit();
+00074 int vfsRegisterFS(int,void *,void *,void *,void *,void *,void *,void *,void *);
+00075 struct fileSystem *vfsFindFS(int);
+00076 
+00077 
+00078 
+00079 //File IO
+00080 fileDescriptor *fopen(const char *file,const char *flags);
+00081 
+00082 
+00083 #endif
+00084 
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/video_8h-source.html b/doc/doxygen/html/video_8h-source.html new file mode 100644 index 0000000..5f32d57 --- /dev/null +++ b/doc/doxygen/html/video_8h-source.html @@ -0,0 +1,50 @@ + + +Ubixos: video.h Source File + + + +

video.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _VIDEO_H
+00025 #define _VIDEO_H
+00026 
+00027 #include <ubixos/types.h>
+00028 
+00029 #define defaultColor 0x0F
+00030 
+00031 extern int printColor;
+00032 
+00033 void clearScreen();
+00034 void kprint(char *string);
+00035 void backSpace();
+00036 
+00037 #endif
+00038 
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/vitals_8h-source.html b/doc/doxygen/html/vitals_8h-source.html new file mode 100644 index 0000000..0868c4f --- /dev/null +++ b/doc/doxygen/html/vitals_8h-source.html @@ -0,0 +1,63 @@ + + +Ubixos: vitals.h Source File + + + +

vitals.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _VITALS_H
+00025 #define _VITALS_H
+00026 
+00027 #include <ubixos/types.h>
+00028 #include <ubixos/ubthread.h>
+00029 #include <vfs/mount.h>
+00030 #include <vfs/vfs.h>
+00031 
+00032 typedef struct vitalsStruct {
+00033   uInt32                openFiles;
+00034   uInt32                sysTicks;
+00035   uInt32                sysUptime;
+00036   uInt32                freePages;
+00037   struct fileSystem    *fileSystems;
+00038   struct mountPoints   *mountPoints;
+00039   uInt32                timeStart;
+00040   void                 *screen;
+00041   void                 *font;
+00042   char                 *packet;
+00043   uInt32               packetLength;
+00044   } vitalsNode;
+00045 
+00046 extern vitalsNode *systemVitals;
+00047 
+00048 int initVitals();
+00049 
+00050 #endif
+00051 
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ + diff --git a/doc/doxygen/html/vmm_8h-source.html b/doc/doxygen/html/vmm_8h-source.html new file mode 100644 index 0000000..de393ca --- /dev/null +++ b/doc/doxygen/html/vmm_8h-source.html @@ -0,0 +1,67 @@ + + +Ubixos: vmm.h Source File + + + +

vmm.h

00001 /**************************************************************************************
+00002  Copyright (c) 2002 The UbixOS Project
+00003  All rights reserved.
+00004 
+00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+00006 
+00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors.
+00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors
+00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its
+00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+00011 
+00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+00019 
+00020  $Id$
+00021 
+00022 **************************************************************************************/
+00023 
+00024 #ifndef _VMM_H
+00025 #define _VMM_H
+00026 
+00027 #include <vmm/paging.h>
+00028 #include <ubixos/types.h>
+00029 
+00030 #define memAvail     1
+00031 #define memNotavail  2
+00032 #define vmmID       -3
+00033 #define vmmMemoryMapAddr 0xE6667000
+00034 
+00035 typedef struct {
+00036   uLong  pageAddr;
+00037   uShort status;
+00038   pid_t  pid;
+00039   int    cowCounter;
+00040   } mMap;
+00041 
+00042 extern mMap *vmmMemoryMap;
+00043 extern int numPages;
+00044 extern uInt32 freePages;
+00045 
+00046 int vmmInit();
+00047 int vmmMemMapInit();
+00048 int countMemory();
+00049 uInt32 vmmFindFreePage(pidType pid);
+00050 int freePage(uInt32 pageAddr);
+00051 int adjustCowCounter(uInt32 baseAddr,int adjustment);
+00052 void vmmFreeProcessPages(pidType pid);
+00053 
+00054 #endif
+00055 
+

Generated on Wed Apr 28 17:49:42 2004 for Ubixos by + +doxygen +1.3.3
+ +