diff --git a/ndn-cpp/c/interest.h b/ndn-cpp/c/interest.h
index 3248835..b596c50 100644
--- a/ndn-cpp/c/interest.h
+++ b/ndn-cpp/c/interest.h
@@ -4,12 +4,12 @@
  */
 
 #ifndef NDN_INTEREST_H
-#define	NDN_INTEREST_H
+#define NDN_INTEREST_H
 
 #include "name.h"
 #include "publisher-public-key-digest.h"
 
-#ifdef	__cplusplus
+#ifdef __cplusplus
 extern "C" {
 #endif
 
@@ -67,8 +67,8 @@
   ndn_Interest_CHILD_SELECTOR_RIGHT = 1,
   ndn_Interest_ANSWER_CONTENT_STORE = 1,
   ndn_Interest_ANSWER_GENERATED = 2,
-  ndn_Interest_ANSWER_STALE = 4,		// Stale answer OK
-  ndn_Interest_MARK_STALE = 16,		  // Must have scope 0.  Michael calls this a "hack"
+  ndn_Interest_ANSWER_STALE = 4,    // Stale answer OK
+  ndn_Interest_MARK_STALE = 16,      // Must have scope 0.  Michael calls this a "hack"
 
   ndn_Interest_DEFAULT_ANSWER_ORIGIN_KIND = ndn_Interest_ANSWER_CONTENT_STORE | ndn_Interest_ANSWER_GENERATED
 };
@@ -78,15 +78,15 @@
  */
 struct ndn_Interest {
   struct ndn_Name name;
-	int minSuffixComponents;  /**< -1 for none */
-	int maxSuffixComponents;  /**< -1 for none */
+  int minSuffixComponents;  /**< -1 for none */
+  int maxSuffixComponents;  /**< -1 for none */
   struct ndn_PublisherPublicKeyDigest publisherPublicKeyDigest;
-	struct ndn_Exclude exclude;
-	int childSelector;        /**< -1 for none */
-	int answerOriginKind;     /**< -1 for none */
-	int scope;                /**< -1 for none */
-	double interestLifetimeMilliseconds; /**< milliseconds. -1.0 for none */
-	unsigned char *nonce;	    /**< pointer to pre-allocated buffer.  0 for none */
+  struct ndn_Exclude exclude;
+  int childSelector;        /**< -1 for none */
+  int answerOriginKind;     /**< -1 for none */
+  int scope;                /**< -1 for none */
+  double interestLifetimeMilliseconds; /**< milliseconds. -1.0 for none */
+  unsigned char *nonce;     /**< pointer to pre-allocated buffer.  0 for none */
   unsigned int nonceLength; /**< length of nonce.  0 for none */
 };
 
@@ -104,19 +104,19 @@
    struct ndn_ExcludeEntry *excludeEntries, unsigned int maxExcludeEntries) 
 {
   ndn_Name_init(&self->name, nameComponents, maxNameComponents);
-	self->minSuffixComponents = -1;
+  self->minSuffixComponents = -1;
   self->maxSuffixComponents = -1;
   ndn_PublisherPublicKeyDigest_init(&self->publisherPublicKeyDigest);
   ndn_Exclude_init(&self->exclude, excludeEntries, maxExcludeEntries);
-	self->childSelector = -1;
-	self->answerOriginKind = -1;
-	self->scope = -1;
-	self->interestLifetimeMilliseconds = -1.0;
-	self->nonce = 0;
-	self->nonceLength = 0;
+  self->childSelector = -1;
+  self->answerOriginKind = -1;
+  self->scope = -1;
+  self->interestLifetimeMilliseconds = -1.0;
+  self->nonce = 0;
+  self->nonceLength = 0;
 }
 
-#ifdef	__cplusplus
+#ifdef __cplusplus
 }
 #endif
 
