亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? getlocks_test.c

?? subversion-1.4.5.tar.gz 配置svn的源碼
?? C
字號:
/* * getlocks_test.c : show all repository locks living below a URL * * ==================================================================== * Copyright (c) 2000-2005 CollabNet.  All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution.  The terms * are also available at http://subversion.tigris.org/license-1.html. * If newer versions of this license are posted there, you may use a * newer version instead, at your option. * * This software consists of voluntary contributions made by many * individuals.  For exact contribution history, see the revision * history and logs, available at http://subversion.tigris.org/. * ==================================================================== * *  To compile on unix against Subversion and APR libraries, try *  something like: * *  cc getlocks_test.c -o getlocks_test \ *  -I/usr/local/include/subversion-1 -I/usr/local/apache2/include \ *  -L/usr/local/apache2/lib -L/usr/local/lib \ *  -lsvn_client-1 -lsvn_ra-1 -lsvn_subr-1 -lapr-0 -laprutil-0 * */#include "svn_client.h"#include "svn_pools.h"#include "svn_config.h"#include "svn_cmdline.h"#include "svn_time.h"#include "svn_fs.h"#include "svn_path.h"/* Display a prompt and read a one-line response into the provided buffer,   removing a trailing newline if present. */static svn_error_t *prompt_and_read_line(const char *prompt,                     char *buffer,                     size_t max){  int len;  printf("%s: ", prompt);  if (fgets(buffer, max, stdin) == NULL)    return svn_error_create(0, NULL, "error reading stdin");  len = strlen(buffer);  if (len > 0 && buffer[len-1] == '\n')    buffer[len-1] = 0;  return SVN_NO_ERROR;}/* A tiny callback function of type 'svn_auth_simple_prompt_func_t'. For   a much better example, see svn_cl__auth_simple_prompt in the official   svn cmdline client. */static svn_error_t *my_simple_prompt_callback (svn_auth_cred_simple_t **cred,                           void *baton,                           const char *realm,                           const char *username,                           svn_boolean_t may_save,                           apr_pool_t *pool){  svn_auth_cred_simple_t *ret = apr_pcalloc (pool, sizeof (*ret));  char answerbuf[100];  if (realm)    {      printf ("Authentication realm: %s\n", realm);    }  if (username)    ret->username = apr_pstrdup (pool, username);  else    {      SVN_ERR (prompt_and_read_line("Username", answerbuf, sizeof(answerbuf)));      ret->username = apr_pstrdup (pool, answerbuf);    }  SVN_ERR (prompt_and_read_line("Password", answerbuf, sizeof(answerbuf)));  ret->password = apr_pstrdup (pool, answerbuf);  *cred = ret;  return SVN_NO_ERROR;}/* A tiny callback function of type 'svn_auth_username_prompt_func_t'. For   a much better example, see svn_cl__auth_username_prompt in the official   svn cmdline client. */static svn_error_t *my_username_prompt_callback (svn_auth_cred_username_t **cred,                             void *baton,                             const char *realm,                             svn_boolean_t may_save,                             apr_pool_t *pool){  svn_auth_cred_username_t *ret = apr_pcalloc (pool, sizeof (*ret));  char answerbuf[100];  if (realm)    {      printf ("Authentication realm: %s\n", realm);    }  SVN_ERR (prompt_and_read_line("Username", answerbuf, sizeof(answerbuf)));  ret->username = apr_pstrdup (pool, answerbuf);  *cred = ret;  return SVN_NO_ERROR;}/* A callback function used when the RA layer needs a handle to a   temporary file.  This is a reduced version of the callback used in   the official svn cmdline client. */static svn_error_t *open_tmp_file (apr_file_t **fp,               void *callback_baton,               apr_pool_t *pool){  const char *path;  const char *ignored_filename;  SVN_ERR (svn_io_temp_dir (&path, pool));  path = svn_path_join (path, "tempfile", pool);  /* Open a unique file, with delete-on-close set. */  SVN_ERR (svn_io_open_unique_file2 (fp, &ignored_filename,                                     path, ".tmp",                                     svn_io_file_del_on_close, pool));  return SVN_NO_ERROR;}intmain (int argc, const char **argv){  apr_pool_t *pool;  svn_error_t *err;  apr_hash_t *locks;  apr_hash_index_t *hi;  const char *URL;  svn_ra_session_t *session;  svn_ra_callbacks_t *cbtable;  apr_hash_t *cfg_hash;  svn_auth_baton_t *auth_baton;  if (argc <= 1)    {      printf ("Usage:  %s URL\n", argv[0]);        printf ("    Print all locks at or below URL.\n");      return EXIT_FAILURE;    }  URL = argv[1];  /* Initialize the app.  Send all error messages to 'stderr'.  */  if (svn_cmdline_init ("ra_test", stderr) != EXIT_SUCCESS)    return EXIT_FAILURE;  /* Create top-level memory pool. Be sure to read the HACKING file to     understand how to properly use/free subpools. */  pool = svn_pool_create (NULL);  /* Initialize the FS library. */  err = svn_fs_initialize (pool);  if (err) goto hit_error;  /* Make sure the ~/.subversion run-time config files exist, and load. */    err = svn_config_ensure (NULL, pool);  if (err) goto hit_error;  err = svn_config_get_config (&cfg_hash, NULL, pool);  if (err) goto hit_error;      /* Build an authentication baton. */  {    /* There are many different kinds of authentication back-end       "providers".  See svn_auth.h for a full overview. */    svn_auth_provider_object_t *provider;    apr_array_header_t *providers      = apr_array_make (pool, 4, sizeof (svn_auth_provider_object_t *));        svn_client_get_simple_prompt_provider (&provider,                                           my_simple_prompt_callback,                                           NULL, /* baton */                                           2, /* retry limit */ pool);    APR_ARRAY_PUSH (providers, svn_auth_provider_object_t *) = provider;        svn_client_get_username_prompt_provider (&provider,                                             my_username_prompt_callback,                                             NULL, /* baton */                                             2, /* retry limit */ pool);    APR_ARRAY_PUSH (providers, svn_auth_provider_object_t *) = provider;        /* Register the auth-providers into the context's auth_baton. */    svn_auth_open (&auth_baton, providers, pool);        }  /* Create a table of callbacks for the RA session, mostly nonexistent. */  cbtable = apr_pcalloc (pool, sizeof(*cbtable));  cbtable->auth_baton = auth_baton;  cbtable->open_tmp_file = open_tmp_file;  /* Now do the real work. */    err = svn_ra_open (&session, URL, cbtable, NULL, cfg_hash, pool);  if (err) goto hit_error;  err = svn_ra_get_locks (session, &locks, "", pool);  if (err) goto hit_error;  err = svn_cmdline_printf (pool, "\n");  if (err) goto hit_error;    for (hi = apr_hash_first (pool, locks); hi; hi = apr_hash_next (hi))    {      const void *key;      void *val;      const char *path, *cr_date, *exp_date;      svn_lock_t *lock;            apr_hash_this (hi, &key, NULL, &val);      path = key;      lock = val;      cr_date = svn_time_to_human_cstring (lock->creation_date, pool);      if (lock->expiration_date)        exp_date = svn_time_to_human_cstring (lock->expiration_date, pool);      else        exp_date = "never";      err = svn_cmdline_printf (pool, "%s\n", path);      if (err) goto hit_error;      err = svn_cmdline_printf (pool,                                "     UUID Token: %s\n", lock->token);      if (err) goto hit_error;      err = svn_cmdline_printf (pool,                                "          Owner: %s\n", lock->owner);      if (err) goto hit_error;            err = svn_cmdline_printf (pool,                                "        Comment: %s\n",                                lock->comment ? lock->comment : "none");      if (err) goto hit_error;            err = svn_cmdline_printf (pool,                                "        Created: %s\n", cr_date);      if (err) goto hit_error;            err = svn_cmdline_printf (pool,                                "        Expires: %s\n\n", exp_date);      if (err) goto hit_error;    }  return EXIT_SUCCESS; hit_error:  svn_handle_error2 (err, stderr, FALSE, "getlocks_test: ");  return EXIT_FAILURE;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品亚洲成a人| 亚洲成av人片一区二区三区| 91 com成人网| 99国产精品久久久久久久久久久| 日韩免费高清av| 欧美精品在欧美一区二区少妇| 99久久久国产精品免费蜜臀| 亚洲成va人在线观看| 国产日韩精品一区| 91精品久久久久久蜜臀| 亚洲国产成人高清精品| www.欧美亚洲| 色婷婷综合久久久中文字幕| 亚洲激情欧美激情| 欧美伊人久久久久久久久影院| 亚洲国产成人91porn| 日韩亚洲欧美在线| 国产一区二区三区在线看麻豆| 国产日韩av一区二区| 色综合久久中文字幕综合网| 亚洲一区二区在线观看视频| 欧美一级高清大全免费观看| 国产精品一区二区视频| 亚洲人吸女人奶水| 91超碰这里只有精品国产| 国产综合久久久久久鬼色 | 亚洲图片有声小说| 91精品婷婷国产综合久久| 九九视频精品免费| 亚洲欧洲日产国码二区| 欧美日韩成人激情| 国产河南妇女毛片精品久久久| 综合久久久久综合| 欧美日韩精品一二三区| 国产综合色在线| 亚洲综合在线五月| 26uuu亚洲综合色| 91传媒视频在线播放| 久99久精品视频免费观看| 亚洲欧美日韩国产综合在线 | 欧美日韩综合在线免费观看| 国内精品视频666| 亚洲欧美激情视频在线观看一区二区三区| 欧美日韩一二三| 国产99精品国产| av一区二区三区四区| 三级一区在线视频先锋 | 精品福利一二区| 在线视频国内自拍亚洲视频| 久久av资源网| 亚洲国产综合色| 中文一区一区三区高中清不卡| 在线播放视频一区| a4yy欧美一区二区三区| 狠狠色丁香九九婷婷综合五月| 夜夜嗨av一区二区三区网页| 国产色一区二区| 制服丝袜国产精品| 在线亚洲一区二区| 国产精品一二三四| 麻豆成人av在线| 亚洲福利视频一区| 亚洲欧美成aⅴ人在线观看 | 国产色综合一区| 欧美一级xxx| 欧美日韩综合不卡| 91麻豆视频网站| voyeur盗摄精品| 粉嫩绯色av一区二区在线观看 | 日韩精品一区二区三区四区视频| 色狠狠桃花综合| 99久久精品国产导航| 国产黄人亚洲片| 国产一区美女在线| 久草这里只有精品视频| 另类小说色综合网站| 日本欧美肥老太交大片| 日韩精品一区第一页| 午夜精品一区二区三区电影天堂| 亚洲精品ww久久久久久p站| 1024成人网色www| 国产精品乱码人人做人人爱 | 国产欧美日本一区二区三区| 久久综合久久综合久久| 精品久久久久久久久久久久久久久 | 成人午夜又粗又硬又大| 国产大陆亚洲精品国产| 国产成人午夜电影网| 粉嫩一区二区三区性色av| 国产成人在线影院| 国产激情偷乱视频一区二区三区| 国产美女精品一区二区三区| 国产一本一道久久香蕉| 成人sese在线| 色欧美乱欧美15图片| 欧洲激情一区二区| 欧美精品自拍偷拍| 精品剧情v国产在线观看在线| 久久综合一区二区| 日本一区二区视频在线观看| 国产精品久久久久天堂| 伊人性伊人情综合网| 午夜精品一区在线观看| 久久精品国产久精国产爱| 国产乱人伦精品一区二区在线观看 | 亚洲成a人v欧美综合天堂| 日日摸夜夜添夜夜添精品视频| 天天综合色天天| 激情综合色综合久久| 粉嫩aⅴ一区二区三区四区| 91天堂素人约啪| 欧美日韩精品一区视频| 精品国产乱码久久久久久影片| 中文字幕巨乱亚洲| 亚洲国产日韩a在线播放性色| 麻豆国产91在线播放| 成人av动漫在线| 欧美精品精品一区| 国产亚洲欧美在线| 一区二区免费看| 国产综合色在线| 欧洲激情一区二区| 久久久久久9999| 亚洲精品高清在线| 韩国精品主播一区二区在线观看| www.激情成人| 在线不卡欧美精品一区二区三区| 国产亚洲欧美日韩日本| 亚洲第一电影网| 国产99久久久国产精品免费看| 欧美日韩精品专区| 欧美国产乱子伦| 日韩国产欧美三级| 99精品偷自拍| 337p日本欧洲亚洲大胆精品| 亚洲一区二区三区三| 国产成人免费视频精品含羞草妖精| 91久久精品网| 国产欧美日韩综合| 免费不卡在线观看| 色av成人天堂桃色av| 国产欧美一区二区精品仙草咪| 午夜不卡av在线| 91在线porny国产在线看| 久久蜜桃av一区精品变态类天堂 | 国产精品白丝jk白祙喷水网站 | 激情欧美日韩一区二区| 欧美午夜精品久久久| 国产精品久久久久久久久图文区| 毛片av一区二区三区| 欧美日韩在线三级| 中文字幕综合网| 国产伦精品一区二区三区免费| 欧美精品aⅴ在线视频| 亚洲欧美色图小说| 在线播放中文一区| 亚洲国产精品久久久久秋霞影院 | 91久久精品一区二区三| 中文字幕一区二区视频| 激情久久久久久久久久久久久久久久| 精品视频999| 亚洲男同性视频| av在线播放不卡| 国产精品色眯眯| 国产不卡在线视频| 久久久精品国产免费观看同学| 毛片av一区二区三区| 日韩欧美国产麻豆| 日本午夜一区二区| 777午夜精品免费视频| 天天操天天综合网| 欧美卡1卡2卡| 日日摸夜夜添夜夜添国产精品| 欧美欧美午夜aⅴ在线观看| 亚洲成人黄色影院| 欧美肥大bbwbbw高潮| 午夜国产精品一区| 欧美电影影音先锋| 免费人成在线不卡| 欧美mv日韩mv国产网站app| 久久电影网站中文字幕| 久久久久亚洲蜜桃| 国产激情视频一区二区在线观看| 欧美国产欧美综合| 91丨国产丨九色丨pron| 亚洲综合999| 欧美精品视频www在线观看| 美日韩一级片在线观看| 久久综合久久综合久久综合| 成人小视频在线| 一区二区三区中文免费| 欧美伦理电影网| 另类小说欧美激情| 国产精品视频一区二区三区不卡 | 色网综合在线观看| 五月天中文字幕一区二区| 日韩精品一区二区三区四区| 国产很黄免费观看久久| 亚洲精品欧美激情| 制服丝袜国产精品|