Tools/DiskTool - Misc fixes for recent kernel changes
authorJohn Hodge <[email protected]>
Sat, 27 Jul 2013 15:51:32 +0000 (23:51 +0800)
committerJohn Hodge <[email protected]>
Sat, 27 Jul 2013 15:51:32 +0000 (23:51 +0800)
Tools/DiskTool/Makefile
Tools/DiskTool/helpers.c
Tools/DiskTool/include/acess.h
Tools/DiskTool/include/acess_logging.h
Tools/DiskTool/vfs_handles.c

index 4b0ef60..f749f80 100644 (file)
@@ -25,6 +25,7 @@ N_OBJ = main.o script.o helpers.o
 # Compilation Options
 CFLAGS := -Wall -std=gnu99 -g -Werror
 CPPFLAGS := -I include/ -I ../nativelib
+CPPFLAGS += -I../../Usermode/Libraries/ld-acess.so_src/include_exp/    # Syscalls
 K_CPPFLAGS := -I $(KERNEL_SRC)include -I $(MODULE_SRC)
 LDFLAGS += -Wl,--defsym,__buildnum=$(BUILD_NUM) -g -L ../ -lnativelib
 
index f2aa26d..7835169 100644 (file)
@@ -41,7 +41,7 @@ size_t DiskTool_int_TranslatePath(char *Buffer, const char *Path)
                const char *pos;
                for(pos = Path; pos < colon; pos ++)
                {
-                       if( !isalpha(*pos) )
+                       if( !isalnum(*pos) )
                                goto native_path;
                }
                
index 7eff8c9..97d4ab3 100644 (file)
@@ -13,7 +13,7 @@
 #define STR(x) #x
 #define EXPAND_STR(x) STR(x)
 
-#define ASSERT(x)      do{}while(0)
+//#define ASSERT(x)    do{}while(0)
 
 extern char    __buildnum[];
 #define BUILD_NUM      ((int)(Uint)&__buildnum)
@@ -125,6 +125,8 @@ extern int  WriteUTF8(Uint8 *str, Uint32 Val);
 // TODO: Move out?
 extern int     DivUp(int value, int divisor);
 extern uint64_t        DivMod64U(uint64_t Num, uint64_t Den, uint64_t *Rem);
+static inline int MIN(int a, int b) { return a < b ? a : b; }
+static inline int MAX(int a, int b) { return a > b ? a : b; }
 
 static inline void SHORTLOCK(tShortSpinlock *Lock) {
        if(*Lock)       Log_KernelPanic("---", "Double short lock");
index f8577dd..01d51e3 100644 (file)
@@ -22,6 +22,7 @@ extern void   Log_Notice(const char *Ident, const char *Message, ...);
 extern void    Log_Log(const char *Ident, const char *Message, ...);
 extern void    Log_Debug(const char *Ident, const char *Message, ...);
 
+extern void    Panic(const char *Msg, ...);
 extern void    Warning(const char *Message, ...);
 extern void    Log(const char *Message, ...);
 extern void    Debug_HexDump(const char *Prefix, const void *Data, size_t Length);
@@ -30,5 +31,18 @@ extern void  Debug_TraceEnter(const char *Function, const char *Format, ...);
 extern void    Debug_TraceLog(const char *Function, const char *Format, ...);
 extern void    Debug_TraceLeave(const char *Function, char Type, ...);
 
+
+#if !DISABLE_ASSERTS
+# define ASSERTV(expr,msg,args...) do{if(!(expr))Panic("%s:%i - %s: Assertion '"#expr"' failed"msg,__FILE__,__LINE__,(char*)__func__,##args);}while(0)
+# define ASSERTRV(expr,rv,msg,args...) do{if(!(expr)){Warning("%s:%i: Assertion '"#expr"' failed"msg,__FILE__,__LINE__,(char*)__func__ , ##args);return rv;}}while(0)
+#else
+# define ASSERTV(expr)
+# define ASSERTRV(expr)
+#endif
+#define ASSERT(expr)   ASSERTV(expr, "")
+#define ASSERTR(expr,rv)       ASSERTRV(expr, rv, "")
+#define ASSERTC(l,rel,r)       ASSERTV(l rel r, ": %i"#rel"%i", l, r)
+#define ASSERTCR(l,rel,r,rv)   ASSERTRV(l rel r, rv, ": %i"#rel"%i", l, r)
+
 #endif
 
index 4f30151..f076bc6 100644 (file)
@@ -31,3 +31,12 @@ tVFS_Handle *VFS_GetHandle(int ID)
                return NULL;
        return &gaKernelHandles[ID];
 }
+
+int VFS_SetHandle(int FD, tVFS_Node *Node, int Mode)
+{
+       if( FD < 0 ||  FD >= MAX_KERNEL_FILES )
+               return -1;
+       gaKernelHandles[FD].Node = Node;
+       gaKernelHandles[FD].Mode = Mode;
+       return 0;
+}

UCC git Repository :: git.ucc.asn.au