瀏覽代碼

2009-10-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

	Added missing bitfield.cc
	* src/bitfield.cc
Tatsuhiro Tsujikawa 16 年之前
父節點
當前提交
9b49e45e96
共有 2 個文件被更改,包括 56 次插入0 次删除
  1. 5 0
      ChangeLog
  2. 51 0
      src/bitfield.cc

+ 5 - 0
ChangeLog

@@ -1,3 +1,8 @@
+2009-10-25  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
+
+	Added missing bitfield.cc
+	* src/bitfield.cc
+
 2009-10-23  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 
 	Renamed Util.{cc,h} as util.{cc,h}

+ 51 - 0
src/bitfield.cc

@@ -0,0 +1,51 @@
+/* <!-- copyright */
+/*
+ * aria2 - The high speed download utility
+ *
+ * Copyright (C) 2009 Tatsuhiro Tsujikawa
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ *
+ * In addition, as a special exception, the copyright holders give
+ * permission to link the code of portions of this program with the
+ * OpenSSL library under certain conditions as described in each
+ * individual source file, and distribute linked combinations
+ * including the two.
+ * You must obey the GNU General Public License in all respects
+ * for all of the code used other than OpenSSL.  If you modify
+ * file(s) with this exception, you may extend this exception to your
+ * version of the file(s), but you are not obligated to do so.  If you
+ * do not wish to do so, delete this exception statement from your
+ * version.  If you delete this exception statement from all source
+ * files in the program, then also delete it here.
+ */
+/* copyright --> */
+#include "bitfield.h"
+
+namespace aria2 {
+
+namespace bitfield {
+
+void flipBit(unsigned char* data, size_t length, size_t bitIndex)
+{
+  size_t byteIndex = bitIndex/8;
+  assert(byteIndex <= length);
+  unsigned char mask = 128 >> (bitIndex%8);
+  data[byteIndex] ^= mask;
+}
+
+} // namespace bitfield
+
+} // namespace aria2