burp-clj-montoya/java/burp/BurpExtender.java

29 lines
891 B
Java
Raw Normal View History

2023-05-30 11:35:09 -04:00
package burp_clj_montoya;
import clojure.java.api.Clojure;
import clojure.lang.IFn;
import burp.api.montoya.BurpExtension;
import burp.api.montoya.MontoyaApi;
import burp.api.montoya.logging.Logging;
public class BurpExtender implements BurpExtension
{
@Override
public void initialize(MontoyaApi api)
{
Thread.currentThread().setContextClassLoader(this.getClass().getClassLoader());
IFn require = Clojure.var("clojure.core", "require");
// API hook is stored globally in a state atom for later use
require.invoke(Clojure.read("burp-clj-montoya.extender"));
IFn set_api = Clojure.var("burp-clj-montoya.extender", "set!");
set_api.invoke(api);
require.invoke(Clojure.read("burp-clj-montoya.core"));
IFn register = Clojure.var("burp-clj-montoya.core", "register");
register.invoke(api);
}
}