Questions tagged [require]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
1
vote
1answer
67 views

Why require(msg.sender != tx.origin) do not pass in a smart contract?

My smart contract is calling other smart contract's function, which has inside require(msg.sender != tx.origin, "OneSplit: do not send ETH directly"); function. I do not understand why is it ...
0
votes
1answer
12 views

Why check for zero-account?

I see require(account != address(0x0)); as somewhat of a boilerplate check for some functions. Is the purpose just to add a check that prevents the creation of a new contract?
0
votes
1answer
11 views

What is the “correct” way to check if an address is zero? [duplicate]

A similar question was asked here: What is the correct way to check if an address is zero? but it was back in 2017. What's the purpose of require(account != address(0)); and is it still relevant? I ...
0
votes
1answer
51 views

Require a specific amount of Ether inside the payable function

I have a payble function that has some logic. I want that logic to be triggered only if the received amount is equal to the amount specified when the contract was created. Solidity v0.7.6 receive() ...
1
vote
0answers
13 views

what is _; in solidity, well after every require statement this is follwed and why? [duplicate]

modifier onlyOwner() { require(isOwner()); _; } what is the use of the the underscore here and why it is used after almost every require statements!
0
votes
0answers
7 views

array of struct inside struct - require

Given two structures, struct travel { string name; uint USN; } struct class { uint classID; string ProfessorName; student[] students; } mapping(uint => class) selectedClass; A ...
0
votes
0answers
10 views

Require messages on Remix or a similar tool

Our team is using Remix for a long time for the first exploratory tests or to call administrative methods (that we do not have specific UI). I remember that some time ago I saw the messages that we ...
1
vote
1answer
18 views

How can I ensure a player matches another player's bet?

First, I want someone to send a bet (money) to the contract. Then I want someone to match the original bet. (There are many more safety checks in the contract. I just removed them to keep this as ...
0
votes
2answers
84 views

how to set a require for a string to not be null

I want to write a require condition for string that string variable could not be null. How to write because string is not taking the != operator function createOrder(address _seller, string memory ...
4
votes
1answer
22 views

Why do Solidity audits include checks that function address arguments are not equal to 0x0?

I've recently completed an audit for some Solidity contracts, and one of the checks the auditor included for all of the contracts was to make sure that address function arguments are not equal to the ...
0
votes
0answers
289 views

Error message shown as [object Object] when use require, how to get actual error message string in Remix IDE Console?

I have used require function as: require(owner == msg.sender, "Sender must be owner"); But in the remix console I got, transact to Contract.setAdmin errored: [object Object] What should I ...
4
votes
2answers
4k views

How to get reason revert using web3.eth.call

I have a smart contract with required message and pretend to use the required/validation message in front end. require(bytes(hashAlreadyRegistered[hash]).length == 0, "Hash already registered&...
0
votes
1answer
42 views

Mapping didn't storing unique values

I wrote this piece of code with the goal to store unique documents hash. Used mapping to accomplished that. pragma solidity ^0.5.16; contract DocumentHash{ string public documentHash; ...
0
votes
1answer
62 views

Could you explain what this require conditions means in this smart contract

I would like to know what exactly this require condition do in this smart contract: function placeBet(uint betMask, uint modulo, uint commitLastBlock, uint commit, uint8 v, bytes32 r, bytes32 s) ...
0
votes
1answer
35 views

Test for Require statement in Truffle

I wrote a function that generate a key value. the function codes is here mapping(string => bool) processedHash; mapping(uint => bool) HashList; function generateHash(uint256 ...
3
votes
2answers
411 views

Read message of require / revert statement in app.js

In my App.js I have called the smart contract function and the require statement in the function is not satisfied, so how do I get the message of that require statement in my App.js?
1
vote
2answers
114 views

Correct syntax for require required

I am getting following error message with require statement: Error: Wrong argument count for function call: 0 arguments given but expected 1. This function requires a single bytes argument. Use ""...
0
votes
1answer
610 views

ERROR: Web3 not defined

I'm trying to build a browser UI to interact with my Solidity smart contract that is deployed on my local Ganache blockchain. But I can't seem to get my index.html file to connect to Metamask. I keep ...
0
votes
1answer
246 views

Always raising “Gas required exceeds allowance or always failing transaction” when the condition of require() is not met

I tried to run the following code to check the error message when the condition of require() is not met. pragma solidity ^0.5.16; ... function addUser(string memory name) public returns (int) { ...
0
votes
2answers
2k views

How to diagnose a “Error: Transaction has been reverted by the EVM”?

This the error intercepted from my javascript, using web3.js Error: Transaction has been reverted by the EVM: { "blockHash": "...
1
vote
0answers
54 views

Require not working on geth private node

I have created this contract to manage a votation: pragma solidity ^0.5.7; contract Votacion{ mapping(uint => address[]) private votosCandidatos; uint[] listaCandidatos; bool abierta; address ...
2
votes
1answer
51 views

A Way Around Restricted Getters

Consider a getter function with a restriction on who can read it, like function getData() public view returns (uint x) { require(msg.sender = '0x123..123'); x = data; } This ...
0
votes
2answers
251 views

Check if contract exists in list

I've got a contract which creates another contracts and stores them in a list. How can I check that contract with specific index already exists? import "./User.sol"; contract Main is Ownable { ...
0
votes
1answer
72 views

How do I check If a map entry doesn't exist for a given sender?

I have a map such as: mapping (address => bytes32) private myMap; Later in the code, in a function, I want to ensure my sender already has an entry in that given map. Can I do this? require(!...
2
votes
3answers
613 views

Should I use require in view functions?

When I call a solidity function to get a struct element, is it a best practice to use require and check if the element exists or should I just return the empty values? Without require: function ...
0
votes
1answer
141 views

Geth Node doesn't revert a transaction not satisfying a require

i'm testing my smart contract on remix with local ganache cli, when i try to test case that doesn't satisfy a require on the SC i correctly receive message "transact to Contract.function errored: VM ...
2
votes
1answer
491 views

How to handle require/revert/assert errors properly

I'm trying to find an easy pattern to revert/rollback a write transaction. The first idea was to log a GenericErrorEvent but then I noticed that it will never be emited if any require/revert/assert ...
1
vote
1answer
176 views

How to get require() to accept decimal value of ether in payable functions in Solidity?

On using, require(msg.value == registerFeeMap[msg.sender] /_currentRate) (fractional ETH value calculated) require(msg.value == registerFeeMap[msg.sender]*10**18/ _currentRate) (ETH converted to ...
1
vote
2answers
141 views

How to use function arguments of payable function for require statement?

function createCampaign(uint deposit, address ll) public payable{ dpst = deposit; require(msg.value > (40*dpst)/100 wei); address newCampaign = address((new Campaign).value(msg.value)(...
2
votes
2answers
60 views

Validate bytes16 argument size

I have a function which accepts one bytes16 argument. function start( bytes16 reference ) I have some events which I use to track behaviour, using reference as the index. Everything works ...
2
votes
1answer
372 views

VM Exception while processing transaction: revert message

When a solidity smart contract reverts with a message due to a failure on a require statement, the browser calling the smart contract returns "Error: VM Exception while processing transaction: revert"....
0
votes
1answer
86 views

Is there a way to know the REAL msg.sender?

I want to know the real msg.sender of the transaction. Which this means is, if I use truffle console I can change the msg.sender by using {from: another address}. So let's say my address is A, and ...
1
vote
1answer
92 views

Why does this function not need a require statement?

Why does the following function not need a require statment? function transferFrom(address from, address to, uint256 value) public returns (bool) { _allowed[from][msg.sender] = _allowed[from][...
1
vote
1answer
705 views

Emit event while require statement fails

I would like to be able to log a result of a condition: if(time > 5) { emit Result("time is larger than 5"); } else { emit Result("time is less than 5"); } This will work just fine, but ...
2
votes
2answers
44 views

Does the require function need more gas when called with a message?

If I add a message to require as a second parameter, will it increase gas consumption?
0
votes
0answers
46 views

Are function modifiers added to the stack in solidity? [duplicate]

I've got a function with a decent number of modifiers and I hit the CompilerError: Stack too deep, try removing local variables error. If I remove one of the modifiers though, everything's all right. ...
1
vote
2answers
54 views

Check given adders transaction history? [closed]

I've created a voting game on eth blockchain. I would like to make a function, that only address with previous transaction history(not a fresh address) can call. So doesn't allow people to create a ...
4
votes
1answer
617 views

how accurate are gas estimates?

I am currently running some tests on ganache using web3.js connector. Most of my transactions run OK if I supply the same amount of gas that is suggested by web3.eth.estimateGas(), however, one of ...
5
votes
1answer
405 views

Setting time requirements in Solidity

I want a function to only be able to be called after a certain specific period of time has passed from the contract's inception. Generally, I was using block.number for that. As in: require(block....
3
votes
1answer
136 views

Access require message

I am using JavaScript to run some tests on my solidity contract. Since solidity ^0.4.22 you can have a message in require such as: function Hello { require(msg.sender == 0x001234, "msg.sender ...
1
vote
1answer
318 views

How to use require() with stings

I am trying to run this code on remix IDE: pragma solidity ^0.4.24; contract Aa { string public result; function feedData(string _result) public { require(_result = "e" , "...
3
votes
1answer
39 views

Contract design by contract -> correctness and maximum gas consumption

This question is a general design question that regards contract correctness and the functions I list here are just examples. As I develop on Ethereum, it becomes aparent to me that it might be ...
0
votes
1answer
298 views

Expect Error: transaction in Truffle [duplicate]

Im testing wheter a require function does its job by reverting and want to test in within a truffle test. it("The URI should be unique", async () =>{ const dupURI = await token....
1
vote
1answer
977 views

Test if a map element has been deleted or does not exist?

I have a map of game IDs to game structs in my Solidity contract. I want to test if a game struct for a given ID does not exist or has been deleted. I am using the code below: // The map that maps ...
2
votes
1answer
1k views

Custom error message in require() not showing up?

I've got Solidity v0.4.24 And I'm doing this: require(false,"this is a test"); When I run truffle test I get the revert, but I cant see the error message. Any ideas what could be wrong?
2
votes
2answers
3k views

Syntax: How do you require a string to be null (or anything but null)?

I want to make sure that when doSomething() is called, the string variable is always populated (that it can't be left blank): function doSomething (string hash) public { require(hash != ...
5
votes
2answers
734 views

Why not use require() in place of assert()?

Even though require() is used substantially more than assert(), there are places where assert() gets used. One example would be in the widely adopted SafeMath library by OpenZeppelin: function add(...
1
vote
2answers
81 views

transfer back msg.value to caller on error

I have a function with modifier 'payable' in the contract. My understading is, msg.value gets added to the contract's balance and then further code is executed. First question, is this a correct ...
1
vote
1answer
374 views

Handling require/assert failure errors correctly from a Node.JS app?

I have a getter function in my smart contract that returns one of the string values in statically defined string array. Upon entry to the function, it does a bounds check on the incoming index using ...
1
vote
0answers
198 views

cannot get return variable(s) in javascript when using require in solidity

I have a function in solidity that returns a few bytes32 variables. I cannot for the life of me access those variables. Can someone please help? function getData() public returns (bytes32, bytes32, ...