go fuzz 源码

  • 2022-07-15
  • 浏览 (888)

golang fuzz 代码

文件路径:/src/html/fuzz.go

// Copyright 2019 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

//go:build gofuzz

package html

import (
	"fmt"
)

func Fuzz(data []byte) int {
	v := string(data)

	e := EscapeString(v)
	u := UnescapeString(e)
	if v != u {
		fmt.Printf("v = %q\n", v)
		fmt.Printf("e = %q\n", e)
		fmt.Printf("u = %q\n", u)
		panic("not equal")
	}

	// As per the documentation, this isn't always equal to v, so it makes
	// no sense to check for equality. It can still be interesting to find
	// panics in it though.
	EscapeString(UnescapeString(v))

	return 0
}

相关信息

go 源码目录

相关文章

go entity 源码

go entity_test 源码

go escape 源码

go escape_test 源码

go example_test 源码

0  赞