6xxx strlen and 9xxx conclusions.
[libguestfs-talks.git] / 2020-frama-c / 6100-strlen-1.html
diff --git a/2020-frama-c/6100-strlen-1.html b/2020-frama-c/6100-strlen-1.html
new file mode 100644 (file)
index 0000000..c1e5d08
--- /dev/null
@@ -0,0 +1,20 @@
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+<link rel="stylesheet" href="style.css" type="text/css"/>
+<script src="code.js" type="text/javascript"></script>
+
+<h1>glibc strlen (part 1)</h1>
+
+<pre class="code">
+size_t
+test_strlen (const char *str)
+{
+  const char *char_ptr;
+
+  <span class="comment">/* Handle the first few characters by reading one character at a time.
+     Do this until CHAR_PTR is aligned on a longword boundary.  */</span>
+  for (char_ptr = str; ((unsigned long int) char_ptr
+                       & (sizeof (longword) - 1)) != 0;
+       ++char_ptr)
+    if (*char_ptr == '\0')
+      return char_ptr - str;
+</pre>