summaryrefslogtreecommitdiff
path: root/misc/ctm/files/patch-ctm_ctm.h
blob: 78731d36ddd6d0ca60d7fda0d0b8c16452134384 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
--- ctm/ctm.h.orig	2018-10-27 15:56:22 UTC
+++ ctm/ctm.h
@@ -24,6 +24,7 @@
 #include <sys/stat.h>
 #include <sys/file.h>
 #include <sys/time.h>
+#include <stdint.h>
 
 #define VERSION "2.0"
 
@@ -40,6 +41,8 @@
 #define CTM_F_MD5		0x05
 #define CTM_F_Count		0x06
 #define CTM_F_Bytes		0x07
+#define CTM_F_Release		0x08
+#define CTM_F_Forward		0x09
 
 /* The qualifiers... */
 #define CTM_Q_MASK		0xff00
@@ -47,10 +50,13 @@
 #define CTM_Q_Name_Dir		0x0200
 #define CTM_Q_Name_New		0x0400
 #define CTM_Q_Name_Subst	0x0800
+#define CTM_Q_Name_Svnbase	0x1000
 #define CTM_Q_MD5_After		0x0100
 #define CTM_Q_MD5_Before	0x0200
 #define CTM_Q_MD5_Chunk		0x0400
 #define CTM_Q_MD5_Force		0x0800
+#define CTM_Q_Forward_Tar	0x0100
+#define CTM_Q_Forward_SVN	0x0200
 
 struct CTM_Syntax {
     char	*Key;		/* CTM key for operation */
@@ -145,14 +151,16 @@ void Fatal_(int ln, char *fn, char *kind);
 u_char * Ffield(FILE *fd, MD5_CTX *ctx,u_char term);
 u_char * Fname(FILE *fd, MD5_CTX *ctx,u_char term,int qual, int verbose);
 
-int Fbytecnt(FILE *fd, MD5_CTX *ctx, u_char term);
+intmax_t Fbytecnt(FILE *fd, MD5_CTX *ctx, u_char term);
 
 u_char * Fdata(FILE *fd, int u_chars, MD5_CTX *ctx);
+int Fforward(FILE *fd, intmax_t u_chars, MD5_CTX *ctx, FILE *fd_to);
 
 #define GETFIELD(p,q) if(!((p)=Ffield(fd,&ctx,(q)))) return BADREAD
 #define GETFIELDCOPY(p,q) if(!((p)=Ffield(fd,&ctx,(q)))) return BADREAD; else p=String(p)
 #define GETBYTECNT(p,q) if(0 >((p)= Fbytecnt(fd,&ctx,(q)))) return BADREAD
 #define GETDATA(p,q) if(!((p) = Fdata(fd,(q),&ctx))) return BADREAD
+#define GETFORWARD(p,q) if(!Fforward(fd,(p),&ctx,q)) return BADREAD
 #define GETNAMECOPY(p,q,r,v) if(!((p)=Fname(fd,&ctx,(q),(r),(v)))) return BADREAD; else p=String(p)
 
 int Pass1(FILE *fd, unsigned applied);