From 12f55fbe335b64d04565c4ea9698e72188d03f06 Mon Sep 17 00:00:00 2001 From: Projjal Gupta Date: Sat, 5 May 2018 23:19:09 +0530 Subject: [PATCH 1/3] Fixed Hoek Dependency Security vulnerability --- GUI/package-lock.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GUI/package-lock.json b/GUI/package-lock.json index e9848a4..ce71184 100644 --- a/GUI/package-lock.json +++ b/GUI/package-lock.json @@ -203,7 +203,7 @@ "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "dev": true, "requires": { - "hoek": "2.16.3" + "hoek": "4.2.1" } }, "brace-expansion": { From ef13c5040dcf112c27c97973e0b6ac489192d45b Mon Sep 17 00:00:00 2001 From: paltrickontpb Date: Sat, 5 May 2018 23:29:44 +0530 Subject: [PATCH 2/3] Hoek Dependency Package-lock Updated to 4.2.1 --- GUI/package-lock.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/GUI/package-lock.json b/GUI/package-lock.json index ce71184..0be76cc 100644 --- a/GUI/package-lock.json +++ b/GUI/package-lock.json @@ -990,7 +990,7 @@ "bundled": true, "dev": true, "requires": { - "hoek": "2.16.3" + "hoek": "4.2.1" } }, "brace-expansion": { @@ -1248,12 +1248,12 @@ "requires": { "boom": "2.10.1", "cryptiles": "2.0.5", - "hoek": "2.16.3", + "hoek": "4.2.1", "sntp": "1.0.9" } }, "hoek": { - "version": "2.16.3", + "version": "4.2.1", "bundled": true, "dev": true }, @@ -1631,7 +1631,7 @@ "bundled": true, "dev": true, "requires": { - "hoek": "2.16.3" + "hoek": "4.2.1" } }, "sshpk": { @@ -1893,14 +1893,14 @@ "requires": { "boom": "2.10.1", "cryptiles": "2.0.5", - "hoek": "2.16.3", + "hoek": "4.2.1", "sntp": "1.0.9" } }, "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", + "integrity": "sha1-9634502AA12C445DD5A7C5734B572BB8738AACBB", "dev": true }, "hosted-git-info": { @@ -2955,7 +2955,7 @@ "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "dev": true, "requires": { - "hoek": "2.16.3" + "hoek": "4.2.1" } }, "socket.io": { From d5886437baa3ede25013afc3f403ee6dc2b33175 Mon Sep 17 00:00:00 2001 From: Souradeep Date: Sun, 14 Oct 2018 04:26:23 +0530 Subject: [PATCH 3/3] Added Vyper contracts --- Vyper-contracts/auto.vy | 113 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 Vyper-contracts/auto.vy diff --git a/Vyper-contracts/auto.vy b/Vyper-contracts/auto.vy new file mode 100644 index 0000000..8ec3aeb --- /dev/null +++ b/Vyper-contracts/auto.vy @@ -0,0 +1,113 @@ +#Vyper Contract +time_now: public(timestamp) +string_hash: public(bytes32) +pooltime: public(timestamp) + +auto_industry: public({ + typ: uint256, + _add: address +}[address]) + + +vehicle: public({ + vehicle_id: uint256, + vehicle_name: bytes32 +}[uint256]) + +parts_mapping: public(uint256[bytes32]) +id_mapping: public(uint256[bytes32]) +time_mapping: public(timestamp[bytes32]) +hashing_item: public(bytes32[bytes32]) +price_mapping: public(uint256[bytes32]) +completeness: public(uint256[uint256]) + +@public +@payable +def __init__(): + pass + + +@public +def add_OEM(): + self.auto_industry[msg.sender]= {typ: 1,_add: msg.sender} + +@public +def add_AUTO_MANU(): + self.auto_industry[msg.sender]= {typ: 2,_add: msg.sender} + + +@public +def addparts(name: bytes32,quantity: uint256,ids: uint256,price: uint256): + assert self.auto_industry[msg.sender].typ == 1 + self.parts_mapping[name]+=quantity + self.time_now=block.timestamp + self.id_mapping[name]=ids + self.time_mapping[name]=self.time_now + self.price_mapping[name]=price + # figure out a way to hash name,ids and time together + self.hashing_item[name]=sha3(name) + +@public +@constant +def display(part_name: bytes32) -> uint256: + return self.parts_mapping[part_name] + +@public +@constant +def buy_part_amount_show(name_of_part: bytes32, how_many: uint256) -> uint256: + return how_many*self.price_mapping[name_of_part] + +@public +@payable +def use_OEM_Parts(name_of_part: bytes32,how_many: uint256,id_of_item: bytes32): + #include hash check here + assert self.parts_mapping[name_of_part] > how_many + self.parts_mapping[name_of_part]-=how_many + self.pooltime = block.timestamp + + +@public +@constant +def getPoolMoney() -> uint256(wei): + return self.balance + +@public +def defective(_name_of_part: bytes32, no_of_pieces: uint256(wei)): + assert self.auto_industry[msg.sender].typ == 2 + send(msg.sender,no_of_pieces*self.price_mapping[_name_of_part]) + + +@public +@payable +def pay_to_OEM(): + assert self.auto_industry[msg.sender].typ == 1 + if (block.timestamp - self.pooltime) > 36000 : + send(msg.sender,self.balance) + +@public +def part_to_vehicle(partid: uint256,vehicle_n: bytes32,_vehicle_id: uint256): + assert self.auto_industry[msg.sender].typ ==2 + assert self.completeness[_vehicle_id]!=1 + self.vehicle[partid] = {vehicle_id: _vehicle_id,vehicle_name: vehicle_n} + + +@public +@constant +def check_part_location(partid: uint256) -> uint256: + return self.vehicle[partid].vehicle_id + +@public +@constant +def check_part_location2(partid: uint256) -> bytes32: + return self.vehicle[partid].vehicle_name + + +@public +def vehicle_assembled(vehicle_id: uint256): + self.completeness[vehicle_id]=1 + + +@public +@payable +def __default__(): + pass