Merge branch 'master' into vxlan
diff --git a/doc/Makefile b/doc/Makefile
index 1df6081..b92957e 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -6,7 +6,7 @@
 
 LATEX=latex
 DVIPS=dvips
-SGML2DVI=sgml2latex --output=dvi
+SGML2DVI=sgml2latex
 SGML2HTML=sgml2html -s 0
 LPR=lpr -Zsduplex
 SHELL=bash
@@ -31,8 +31,11 @@
 print: $(PSFILES)
 	$(LPR) $(PSFILES)
 
+%.tex: %.sgml
+	$(SGML2DVI) --output=tex $<
+
 %.dvi: %.sgml
-	$(SGML2DVI) $<
+	$(SGML2DVI) --output=dvi $<
 
 %.dvi: %.tex
 	@set -e; pass=2; echo "Running LaTeX $<"; \
@@ -44,10 +47,17 @@
 		echo "Re-running LaTeX $<, $${pass}d pass"; pass=$$[$$pass + 1]; \
 	done
 
-#%.pdf: %.tex
-#	pdflatex $<
-%.pdf: %.ps
-	ps2pdf $<
+%.pdf: %.tex
+	@set -e; pass=2; echo "Running pdfLaTeX $<"; \
+	while [ `pdflatex $< </dev/null 2>&1 | \
+		 grep -c '^\(LaTeX Warning: Label(s) may\|No file \|! Emergency stop\)'` -ge 1 ]; do \
+		if [ $$pass -gt 3 ]; then \
+			echo "Seems, something is wrong. Try by hands." ; exit 1 ; \
+		fi; \
+		echo "Re-running pdfLaTeX $<, $${pass}d pass"; pass=$$[$$pass + 1]; \
+	done
+#%.pdf: %.ps
+#	ps2pdf $<
 
 %.ps: %.dvi
 	$(DVIPS) $< -o $@
diff --git a/include/SNAPSHOT.h b/include/SNAPSHOT.h
index b8eb6c1..d4fc137 100644
--- a/include/SNAPSHOT.h
+++ b/include/SNAPSHOT.h
@@ -1 +1 @@
-static const char SNAPSHOT[] = "120801";
+static const char SNAPSHOT[] = "121001";
diff --git a/include/linux/xfrm.h b/include/linux/xfrm.h
index 0aa3805..1ef80ef 100644
--- a/include/linux/xfrm.h
+++ b/include/linux/xfrm.h
@@ -84,6 +84,8 @@
 	__u32	bitmap;
 };
 
+#define XFRMA_REPLAY_ESN_MAX	4096
+
 struct xfrm_replay_state_esn {
 	unsigned int	bmp_len;
 	__u32		oseq;