用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - c代码库

ats修改max-age示例插件代码

2013-10-31 作者: 云代码会员举报

[c]代码库

/*
 *   replace_maxage.c
 */
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
#include "ts/ts.h"
#include "/root/trafficserver/lib/ts/ink_defs.h"
#define PLUGIN_NAME "stacache"
 
static void
cache_lookup(TSHttpTxn txnp)
{
  //TSCacheUrlSet(TSHttpTxn txnp, const char* url, int length);
  int st = TS_CACHE_LOOKUP_MISS;
  if(TSHttpTxnCacheLookupStatusGet(txnp, &st) != TS_SUCCESS)
  {
  goto done;
  }
  TSDebug(PLUGIN_NAME,"cache lookup result:%d",st);
done:
  TSHttpTxnReenable(txnp, TS_EVENT_HTTP_CONTINUE);
}
 
static int
cache_lookup_plugin(TSCont contp ATS_UNUSED, TSEvent event, void *edata)
{
  TSHttpTxn txnp = (TSHttpTxn) edata;
 
  switch (event) {
  case TS_EVENT_HTTP_CACHE_LOOKUP_COMPLETE:
    cache_lookup(txnp);
    return 0;
  default:
    break;
  }
  return 0;
}
 
void
TSPluginInit(int argc ATS_UNUSED, const char *argv[] ATS_UNUSED)
{
  TSPluginRegistrationInfo info;
 
  info.plugin_name = "stacache";
  info.vendor_name = "stateam";
  info.support_email = "sta-team";
 
  if (TSPluginRegister(TS_SDK_VERSION_3_0, &info) != TS_SUCCESS) {
    TSError("Plugin registration failed. \n");
  }
  TSCont contp = TSContCreate(cache_lookup_plugin, NULL);
  TSHttpHookAdd(TS_HTTP_CACHE_LOOKUP_COMPLETE_HOOK, contp);
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...