diff --git a/satoshi/index.html b/satoshi/index.html new file mode 100644 index 0000000..f7eca78 --- /dev/null +++ b/satoshi/index.html @@ -0,0 +1,12380 @@ + + +
+ +This is the correspondence between myself (Martti Malmi, AKA Sirius) and Satoshi Nakamoto, the creator of Bitcoin. + +I did not feel comfortable sharing private correspondence earlier, but decided to do so for an important trial in the UK in 2024 where I was a witness. Also, a long time has passed now since the emails were sent. + +The archive is incomplete and contains only emails from my address @cc.hut.fi. My university email addresses changed to @aalto.fi later, and I don't have backups of those emails. + +There are some passwords and a street address mentioned in the emails, but those are no longer valid or relevant. +
+ +Thanks for starting that topic on ASC, your understanding of bitcoin is +spot on. Some of their responses were rather Neanderthal, although I +guess they're so used to being anti-fiat-money that anything short of +gold isn't good enough. They concede that something is flammable, but +argue that it'll never burn because there'll never be a spark. Once +it's backed with cash, that might change, but I'd probably better +refrain from mentioning that in public anymore until we're closer to +ready to start. I think we'll get flooded with newbies and we need to +get ready first. + +What we need most right now is website writing. My writing is not that +great, I'm a much better coder. Maybe you could create the website on +sourceforge, which is currently blank. If you can write a FAQ, I can +give you a compilation of my replies to questions in e-mail and forums +for facts and details and ideas. + +Codewise, there's not much that's easy right now. One thing that's +needed is an interface for server side scripting languages such as Java, +Python, PHP, ASP, etc. Bitcoin would be running on the web server, and +server side script could call it to do transactions. It's Windows, so I +guess OLE/COM is the interface. + +One easy thing that really helps is to run a node that can accept +incoming connections (forward port 8333 on your firewall) to make sure +that new users who try it out have someone to connect to. If they run +it and get no connections, they'll probably just give up. + +Satoshi + + +Martti Malmi wrote: +> Message body follows: +> +> Hello, +> +> I'm Trickstern from the anti-state.com forum, and I would +> like to help with Bitcoin, if there's something I can do. +> +> I have a good touch on Java and C languages from school +> courses (I'm studying CS), but not so very much development +> experience yet. I think I could learn the C++ tricks quite +> easily on that basis. I could also do testing or +> documentation. +> +> Best regards, +> Martti Malmi +> +> -- +> This message has been sent to you, a registered SourceForge.net user, +> by another site user, through the SourceForge.net site. This message +> has been delivered to your SourceForge.net mail alias. You may reply +> to this message using the "Reply" feature of your email client, or +> using the messaging facility of SourceForge.net at: +> https://sourceforge.net/sendmessage.php?touser=2495503 +> + ++
All right, I can do the website and the FAQ. I'll start writing the +FAQ now with the questions that I can think of. + +I have a feature suggestion for the program: a UI tool for creating +password protected private keys and saving them into a custom +location. Backups of the key will be needed to be safe from losing the +control of your coins, and for using the coins on more than one +computers. Password protection would be needed to make using your +money more difficult for someone who happens to find your key file. + +Maybe a bug/feature tracker could be set up at the Sourceforge project page? + +I'm running a bitcoin node always when my PC is powered on, which +means about 24/7. Bitcoin is a great project, and it's really cool to +participate! + +-Martti Malmi + + +Quoting Satoshi Nakamoto <satoshin@gmx.com>: + +> Thanks for starting that topic on ASC, your understanding of bitcoin is +> spot on. Some of their responses were rather Neanderthal, although I +> guess they're so used to being anti-fiat-money that anything short of +> gold isn't good enough. They concede that something is flammable, but +> argue that it'll never burn because there'll never be a spark. Once +> it's backed with cash, that might change, but I'd probably better +> refrain from mentioning that in public anymore until we're closer to +> ready to start. I think we'll get flooded with newbies and we need to +> get ready first. +> +> What we need most right now is website writing. My writing is not that +> great, I'm a much better coder. Maybe you could create the website on +> sourceforge, which is currently blank. If you can write a FAQ, I can +> give you a compilation of my replies to questions in e-mail and forums +> for facts and details and ideas. +> +> Codewise, there's not much that's easy right now. One thing that's +> needed is an interface for server side scripting languages such as +> Java, Python, PHP, ASP, etc. Bitcoin would be running on the web +> server, and server side script could call it to do transactions. It's +> Windows, so I guess OLE/COM is the interface. +> +> One easy thing that really helps is to run a node that can accept +> incoming connections (forward port 8333 on your firewall) to make sure +> that new users who try it out have someone to connect to. If they run +> it and get no connections, they'll probably just give up. +> +> Satoshi +> +> +> Martti Malmi wrote: +>> Message body follows: +>> +>> Hello, +>> +>> I'm Trickstern from the anti-state.com forum, and I would like to +>> help with Bitcoin, if there's something I can do. +>> +>> I have a good touch on Java and C languages from school courses +>> (I'm studying CS), but not so very much development experience yet. +>> I think I could learn the C++ tricks quite easily on that basis. I +>> could also do testing or documentation. +>> +>> Best regards, +>> Martti Malmi +>> +>> -- +>> This message has been sent to you, a registered SourceForge.net user, +>> by another site user, through the SourceForge.net site. This message +>> has been delivered to your SourceForge.net mail alias. You may reply +>> to this message using the "Reply" feature of your email client, or +>> using the messaging facility of SourceForge.net at: +>> https://sourceforge.net/sendmessage.php?touser=2495503 +>> + + + ++
mmalmi@cc.hut.fi wrote: +> All right, I can do the website and the FAQ. I'll start writing the FAQ +> now with the questions that I can think of. + +That would be great! I added you (dmp1ce) as a dev to the sourceforge +project and gave you access to edit the web space and everything. + + +> I have a feature suggestion for the program: a UI tool for creating +> password protected private keys and saving them into a custom location. +> Backups of the key will be needed to be safe from losing the control of +> your coins, and for using the coins on more than one computers. Password +> protection would be needed to make using your money more difficult for +> someone who happens to find your key file. + +Definitely. This will be an absolutely essential feature once things +get going, making it so you can lock your wealth up with strong +encryption and back it up more securely than any physical safe. So far +I've been putting it off in favour of other features because it's not +crucial yet until bitcoins start to have value. + +I plan to work on the escrow feature next, which is needed to make +actual trades for physical stuff safer and before backing the currency +with fiat money can begin. + + +> I'm running a bitcoin node always when my PC is powered on, which means +> about 24/7. Bitcoin is a great project, and it's really cool to +> participate! + +Thanks! Right now there are a lot of people on the network who can't +receive incoming connections, so every node that can really helps. +Having more helps keep down the "(not accepted)" issue for now until I +reduce the chances of that happening in v0.1.6. + +I guess one answer for the FAQ should be how to set up your firewall to +forward port 8333 so you can receive incoming connections. The question +could be something like "what if I have 0 connections" and that could be +the answer that it might be because the nodes you can connect with is +limited if you don't set that up. + +Here's a compilation of questions I've answered in forums and e-mail +that should help you see what questions are frequently asked and some +answers I've used. It's not intended to use all or most of the material +here, just pick and choose. This is just a dump of everything I've +answered. + +Some issues that we don't have easy answers for are best not to bring +up. Casual users seems content to assume that the system works as +stated (which it does), and getting into the design details just opens a +can of worms that can't be answered without a deep understanding of the +system. The advanced questions I've received have mostly been unique +per person and best answered individually. + + + +**** QUESTION AND ANSWER DUMP **** + +Any questions used for the FAQ should probably be rephrased. + +questions: + + > The bottom of the UI shows: + > + > Generating 4 connections 4024 blocks 164 transactions + > + > I understand "generating"; I assume I am connected to 4 other nodes; and + > I know I have recorded 164 transactions (including failed generation + > attempts). I'm not clear what the "blocks" figure describes. It's much + > smaller than the total of all the blocks shown against all my +transactions. + > + +It's the total number of blocks in the block chain, meaning the +network's block chain, which everyone has a copy of. Every Bitcoin node +displays the same number and it goes up about every 10 minutes whenever +someone generates a block. When you haven't had it running for a while, +once you're connected it spins up rapidly as it downloads what was +generated while you were gone to catch up. I'm not sure exactly how to +describe it (that would fit on the status bar in 1 word, maybe 2 words +max), any ideas? + +The blocks number in the status column next to your transactions is the +number of blocks that have come after that transaction. Your +transaction is essentially "in" that many blocks. + +Satoshi + + + + + > My best guess - it + > is the length of the global chain, and the rapid advance at the start + > is as the software downloads and verifies the preceding blocks in the + > chain as being valid. + +Right. I'm trying to think of more clear wording for that, maybe "%d +network blocks" or "%d block chain". + + + + + + > I'm having an unusual run of (block not-accepted) failures, and +thought I'd let you know in + > case this was of any significance. + +What rate of not-accepted did you see? I didn't see anything unusual on +my end. If you had more than, say, 4 in a row, that would be abnormal +and probably a loss of network communication. If it's scattered and +less than 25%, just random bad luck. It's normal and harmless to +randomly get some per cent of not-accepted, and of course randomness can +sometimes bunch up and look like a pattern. + +The idea of an option to View/Hide unaccepted blocks is a good one, as +well as View/Hide all generated blocks so you can more easily see +incoming transactions. Seeing the unaccepted blocks is just annoying +and frustrating. Everyone faces the same rate of unaccepted, it's just +a part of the process. It would probably be best to default to hide +unaccepted blocks, so as not to show giving and taking away something +that never was, and not show new generated blocks at all until they have +at least one confirmation. It would only mean finding out you have a +generated block 15 minutes later than normal, and then you still have +119 blocks to go before it matures anyway. This is on the to-do list +for v0.1.6. + +Satoshi + +[note: I have some improvements in 0.1.6 to reduce this problem somewhat, +and it'll also improve when the network is larger] + + + + + + + + > For some reason your transfer to me shows up as "From: unknown" even + > though I added you to my address book. + > + > I have a "Generated (not accepted)" line in my transaction list, it + > seems like an attempt to generate a coin went wrong somehow. Not sure + > what happened here - presumably my node successfully solved a block + > but then I went offline before it was sent to the network? + +Transactions sent to a bitcoin address will always say "from: unknown". + The transaction only tells who it's to. Sending by bitcoin address +has a number of problems, but it's so nice having the fallback option to +be able to send to anyone whether they're online or not. There are a +number of ideas to try to improve things later. For now, if things work +out like the real world where the vast majority of transactions are with +merchants, they'll pretty much always make sure to set up to receive by +IP. The P2P file sharing networks seem fairly successful at getting a +large percentage of their users to set up their firewalls to forward a port. + +I badly wanted to find some way to include a comment with indirect +transfers, but there just wasn't a way to do it. Bitcoin uses EC-DSA, which +was essential for making the block chain compact enough to be practical with +today's technology because its signatures are an order of magnitude smaller +than RSA. But EC-DSA can't encrypt messages like RSA, it can only be used +to verify signatures. + +The "Generated (not accepted)" normally happens if two nodes find a +block at close to the same time, one of them will not be accepted. It's +normal and unavoidable. I plan in v0.1.6 to hide those, since they're +just confusing and annoying and there's no reason for users to have to +see them. While the network is still small like it is now, if you can't +receive incoming connections you're at more of a disadvantage because +you can't receive block announcements as directly. + + + + + > ...So far it has two "Generated" messages, however the + > "Credit" field for those is 0.00 and the balance hasn't changed. Is + > this due to the age/maturity requirement for a coin to be valid? + +Right, the credit field stays 0.00 until it matures, then it'll be +50.00. BTW, you can doubleclick on a line for details. + + + + + + > ...understand correctly, there is only one (or maybe a few) global + > chain[s] into which all transactions are hashed. If there is only one + > chain recording "the story of the economy" so to speak, how does this + > scale? In an imaginary planet-wide deployment there would be millions + > of even billions of transactions per hour being hashed into the chain... + + > ...I found the section on incentives hard to follow. In particular, I'm + > not clear on what triggers the transition from minting new coins as a + > reason to run a node, to charging transaction fees (isn't the point of + > BitCoin largely to zero transaction costs anyway?). Presumably there's + > some human in charge of the system... + + > ...How did you decide on the inflation schedule for v1? Where did 21 + > million coins come from? What denominations are these coins? You + > mention a way to combine and split value but I'm not clear on how this + > works. For instance are bitcoins always denominated by an integer or + > can you have fractional bitcoins?... + + > ...it's rare that I encounter truly + > revolutionary ideas. The last time I was this excited about a new + > monetary scheme was when I discovered Ripple. If you have any thoughts + > on Ripple, I'd also love to hear them. + +There is only one global chain. + +The existing Visa credit card network processes about 15 million +Internet purchases per day worldwide. Bitcoin can already scale much +larger than that with existing hardware for a fraction of the cost. It +never really hits a scale ceiling. If you're interested, I can go over +the ways it would cope with extreme size. + +By Moore's Law, we can expect hardware speed to be 10 times faster in 5 +years and 100 times faster in 10. Even if Bitcoin grows at crazy +adoption rates, I think computer speeds will stay ahead of the number of +transactions. + +I don't anticipate that fees will be needed anytime soon, but if it +becomes too burdensome to run a node, it is possible to run a node that +only processes transactions that include a transaction fee. The owner +of the node would decide the minimum fee they'll accept. Right now, +such a node would get nothing, because nobody includes a fee, but if +enough nodes did that, then users would get faster acceptance if they +include a fee, or slower if they don't. The fee the market would settle +on should be minimal. If a node requires a higher fee, that node would +be passing up all transactions with lower fees. It could do more volume +and probably make more money by processing as many paying transactions +as it can. The transition is not controlled by some human in charge of +the system though, just individuals reacting on their own to market forces. + +A key aspect of Bitcoin is that the security of the network grows as the +size of the network and the amount of value that needs to be protected +grows. The down side is that it's vulnerable at the beginning when it's +small, although the value that could be stolen should always be smaller +than the amount of effort required to steal it. If someone has other +motives to prove a point, they'll just be proving a point I already concede. + +My choice for the number of coins and distribution schedule was an +educated guess. It was a difficult choice, because once the network is +going it's locked in and we're stuck with it. I wanted to pick +something that would make prices similar to existing currencies, but +without knowing the future, that's very hard. I ended up picking +something in the middle. If Bitcoin remains a small niche, it'll be +worth less per unit than existing currencies. If you imagine it being +used for some fraction of world commerce, then there's only going to be +21 million coins for the whole world, so it would be worth much more per +unit. Values are 64-bit integers with 8 decimal places, so 1 coin is +represented internally as 100000000. There's plenty of granularity if +typical prices become small. For example, if 0.001 is worth 1 Euro, +then it might be easier to change where the decimal point is displayed, +so if you had 1 Bitcoin it's now displayed as 1000, and 0.001 is +displayed as 1. + +Ripple is interesting in that it's the only other system that does +something with trust besides concentrate it into a central server. + +Satoshi + + + + + + + > If we assume that 0.1% is a good risk rate, then z=5 thus + > any transaction must wait a bit less than an hour before being + > solidified in the chain. As micropayments for things like web content + > or virtual goods are by definition something that requires low + > overhead, waiting an hour seems like quite a significant hurdle. + +For the actual risk, multiply the 0.1% by the probability that the buyer +is an attacker with a huge network of computers. + +For micropayments, you can safely accept the payment immediately. The +size of the payment is too small for the effort to steal it. +Micropayments are almost always for intellectual property, where there's +no physical loss to the merchant. Anyone trying to steal a micropayment +would probably not be a paying customer anyway, and if they want to +steal intellectual property they can use the file sharing networks. + +Currently, businesses accept a certain chargeoff rate. I believe the +risk with 1 or even 0 confirming blocks will be much less than the rate +of chargebacks on verified credit card transactions. + +The usual scam against a merchant that doesn't wait for confirming +blocks would be to send a payment to a merchant, then quickly try to +propagate a double-spend to the network before the merchant's copy. What +the merchant can do is broadcast his transaction and then monitor the +network for any double-spend copies. The thief would not be able to +broadcast during the monitoring period or else the merchant's node would +receive a copy. The merchant would only have to monitor for a minute or +two until most of the network nodes have his version and it's too late +for the thief's version to catch up and reach many nodes. With just a +minute or two delay, the chance of getting away without paying could be +made much too low to scam. A thief usually needs a high probability of +getting an item for free to make it worthwhile. Using a lot of CPU +power to do the brute force attack discussed in the paper in addition to +the above scam would not increase the thief's chances very much. + +Anything that grants access to something, like something that takes a +while to download, access to a website, web hosting, a subscription or +service, can be cancelled a few minutes later if the transaction is +rejected. + + + > How is the required difficulty of each block communicated through the + > network and agreed upon? + +It's not communicated. The formula is hardcoded in the program and +every node does the same calculation to know what difficulty is required +for the next block. If someone diverged from the formula, their block +would not be accepted by the majority. + + + + + + > Is the code free/open source or just open source? + +It's free open source. It's the MIT license, which just requires some +disclaimer text be kept with the source code, other than that you can do +just about anything you want with it. The source is included in the +main download. + +Satoshi + + + + + + > Is there a way to be told of new versions? Does the app auto update + > itself? Some kind of mailing list would be excellent. + +The list is: +bitcoin-list@lists.sourceforge.net +Subscribe/unsubscribe page: +http://lists.sourceforge.net/mailman/listinfo/bitcoin-list +Archives: +http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-list + +I'll always announce new versions there. Automatic update, or at least +notification of new versions, is definitely on the list. + + + + + +[this inflation discussion was before the transaction fee mechanism and +fixed plan of 21 million coins was posted, so it may not be as +applicable anymore] + + > Since they can be created for free (or at the cost + > of computer power people have anyway for other reasons), + > monetizing them means simply giving away money. + +You're still thinking as if the difficulty level will be so easy that +people will be able to generate all the bitcoins they want. + +Imagine you have to run your computer 24/7 for a month to generate 1 +cent. After a year, you could generate 12 cents. That's not going to +make it so people can just generate all the bitcoin they want for spending. + +The value of bitcoins would be relative to the electricity consumed to +produce them. All modern CPUs save power when they're idle. If you run +a computational task 24/7, not letting it idle, it uses significantly +more power, and you'll notice it generates more heat. The extra wattage +consumed goes straight to your power bill, and the value of the bitcoins +you produce would be something less than that. + + + > Why would they, when they make money by generating + > new ones + +No, they can't make money that way. It would cost them more in +electricity than they'd be selling the bitcoins for. + + + + + + +Historically, people have taken up scarce commodities as money, if +necessary taking up whatever is at hand, such as shells or stones. Each +has a kernel of usefulness that helped bootstrap the process, but the +monetary value ends up being much more than the functional value alone. + Most of the value comes from the value that others place in it. Gold, +for instance, is pretty, non-corrosive and easily malleable, but most of +its value is clearly not from that. Brass is shiny and similar in +colour. The vast majority of gold sits unused in vaults, owned by +governments that could care less about its prettiness. + +Until now, no scarce commodity that can be traded over a communications +channel without a trusted third party has been available. If there is a +desire to take up a form of money that can be traded over the Internet +without a TTP, then now that is possible. + +Satoshi + + + + + + + > As more capable + > computer hardware comes out, the natural supply per user + > doubles at every cycle of Moore's law. + +Actually, that is handled. There's a moving average that compensates +for the total effort being expended so that the total production is a +constant. As computers get more powerful, the difficulty increases to +compensate. + + + > I do not recall any economic history of a commodity subject + > to natural inflation ever being used as money + +There's gold for one. The supply of gold increases by about 2%-3% per +year. Any fiat currency typically averages more inflation than that. + + + + > Won't there be massive inflation as computers get faster and are able +to solve the proof-of-work problem faster? + +The difficulty is controlled by a moving average that compensates for +the total effort being expended to keep the total production constant. +As computers get more powerful, the difficulty increases to compensate. + + + + + + + > If someone double spends, then the transaction record + > can be unblinded revealing the identity of the cheater? + +Identities are not used, and there's no reliance on recourse. It's all +prevention. + + + + + + > ...You're saying + > there's no effort to identify and exclude nodes that don't + > cooperate? I suspect this will lead to trouble and possible DOS + > attacks. + +There is no reliance on identifying anyone. As you've said, it's +futile and can be trivially defeated with sock puppets. + +The credential that establishes someone as real is the ability to +supply CPU power. + + + + + + + > But in the absence of identity, there's no downside to them + > if spends become invalid, if they've already received the + > goods they double-spent for (access to website, download, + > whatever). The merchants are left holding the bag with + > "invalid" coins, unless they wait that magical "few blocks" + > (and how can they know how many?) before treating the spender + > as having paid. + > + > The consumers won't do this if they spend their coin and it takes + > an hour to clear before they can do what they spent their coin on. + > The merchants won't do it if there's no way to charge back a + > customer when they find the that their coin is invalid because + > the customer has doublespent. + +This is a version 2 problem that I believe can be solved fairly +satisfactorily for most applications. + +The race is to spread your transaction on the network first. Think 6 +degrees of freedom -- it spreads exponentially. It would only take +something like 2 minutes for a transaction to spread widely enough +that a competitor starting late would have little chance of grabbing +very many nodes before the first one is overtaking the whole network. +During those 2 minutes, the merchant's nodes can be watching for a +double-spent transaction. The double-spender would not be able to +blast his alternate transaction out to the world without the merchant +getting it, so he has to wait before starting. + +If the real transaction reaches 90% and the double-spent tx reaches +10%, the double-spender only gets a 10% chance of not paying, and 90% +chance his money gets spent. For almost any type of goods, that's +not going to be worth it for the scammer. + +Information based goods like access to website or downloads are +non-fencible. Nobody is going to be able to make a living off +stealing access to websites or downloads. They can go to the file +sharing networks to steal that. Most instant-access products aren't +going to have a huge incentive to steal. + +If a merchant actually has a problem with theft, they can make the +customer wait 2 minutes, or wait for something in e-mail, which many +already do. If they really want to optimize, and it's a large +download, they could cancel the download in the middle if the +transaction comes back double-spent. If it's website access, +typically it wouldn't be a big deal to let the customer have access +for 5 minutes and then cut off access if it's rejected. Many such +sites have a free trial anyway. + +Satoshi + + + + + + +[in response to a question about scale] + +100,000 block generating nodes is a good ballpark large-scale size +to think about. Propagating a transaction across the whole network +twice would consume a total of US$ 0.02 of bandwidth at today's +prices. In practice, many would be burning off excess allocated +bandwidth or unlimited plans with one of the cheaper backbones. +There could be millions of SPV clients. They only matter in how +many transactions they generate. If they pay 1 or 2 cents +transaction fees, they pay for themselves. I've coded it so you +can pay any optional amount of transaction fees you want. When the +incentive subsidy eventually tapers off, it may be necessary to put +a market-determined transaction fee on your transactions to make +sure nodes process them promptly. + +To think about what a really huge transaction load would look like, +I look at the existing credit card network. I found some more +estimates about how many transactions are online purchases. It's +about 15 million tx per day for the entire e-commerce load of the +Internet worldwide. At 1KB per transaction, that would be 15GB of +bandwidth for each block generating node per day, or about two DVD +movies worth. Seems do-able even with today's technology. + +Important to remember, even if Bitcoin caught on at dot-com rates +of growth, it would still take years to become any substantial +fraction of all transactions. I believe hardware has already +recently become strong enough to handle large scale, but if there's +any doubt about that, bandwidth speeds, prices, disk space and +computing power will be much greater by the time it's needed. + +Satoshi + + + + + + + > One other question I had... What prevents the single node with the most + > CPU power from generating and retaining the majority of the BitCoins? + > If every node is working independently of all others, if one is + > significantly more powerful than the others, isn't it probable that this + > node will reach the proper conclusion before other nodes? An + > underpowered node may get lucky once in a while, but if they are at a + > significant horsepower advantage I would expect the majority of BitCoins + > to be generated by the most powerful node. + +It's not like a race where if one car is twice as fast, it'll always +win. It's an SHA-256 that takes less than a microsecond, and each guess +has an independent chance of success. Each computer's chance of finding +a hash collision is linearly proportional to it's CPU power. A computer +that's half as fast would get half as many coins. + + + + + + +[question about what to backup] + +The files are in "%appdata%\Bitcoin", that's the directory to +backup. + +%appdata% is per-user access privilege. Most new programs like +Firefox store their settings files there, despite the headwind of +Microsoft changing the directory name with every Windows release +and being full of spaces and so long it runs off the screen. + + + + + +[question about what to backup] + +The directory is "%appdata%\Bitcoin" +It has spaces in it so you need the quotes +cd "%appdata%\bitcoin" + +On XP it would typically be: +C:\Documents and Settings\[username]\Application Data\Bitcoin + +Backup that whole directory. All data files are in that +directory. There are no temporary files. + + + + + +[question about what to backup] + +The crucial file to backup is wallet.dat. If bitcoin is running +then you have to backup the whole %appdata%\bitcoin directory +including the database subdirectory, but even if it's not running +it certainly feels safer to always backup the whole directory. + +The database unfortunately names its files "log.0000000001". To +the rest of the world, "log" means delete-at-will, but to database +people it means delete-and-lose-everything-in-your-other-files. I +tried to put them out of harm's way by putting them in the +database subdirectory. Later I'll write code to flush the logs +after every wallet change so wallet.dat will be standalone safe +almost all the time. + + + + + + + + > > You know, I think there were a lot more people interested in the 90's, + > > but after more than a decade of failed Trusted Third Party based +systems + > > (Digicash, etc), they see it as a lost cause. I hope they can make the + > > distinction that this is the first time I know of that we're trying a + > > non-trust-based system. + > + > Yea, that was the primary feature that caught my eye. The real trick + > will be to get people to actually value the Bitcoins so that they become + > currency. + +Hal sort of alluded to the possibility that it could be seen as a +long-odds investment. I would be surprised if 10 years from now +we're not using electronic currency in some way, now that we know +a way to do it that won't inevitably get dumbed down when the +trusted third party gets cold feet. + +Once it gets bootstrapped, there are so many applications if you +could effortlessly pay a few cents to a website as easily as dropping +coins in a vending machine. + +[this next bit turned out to be very controversial. there is extreme +prejudice against spam solutions, especially proof-of-work.] + +It can already be used for pay-to-send e-mail. The send dialog is +resizeable and you can enter as long of a message as you like. +It's sent directly when it connects. The recipient doubleclicks +on the transaction to see the full message. If someone famous is +getting more e-mail than they can read, but would still like to +have a way for fans to contact them, they could set up Bitcoin and +give out the IP address on their website. "Send X bitcoins to my +priority hotline at this IP and I'll read the message personally." + +Subscription sites that need some extra proof-of-work for their +free trial so it doesn't cannibalize subscriptions could charge +bitcoins for the trial. + + + + +[again, I don't know why I'm including this, as it's best to stay +away from claims about spam. people automatically react violently +against any suggestion of a spam solution.] + + > Spammer botnets could burn through pay-per-send email filters + > trivially (as usual, the costs would fall on people other than the + > botnet herders & spammers). + +Then you could earn a nice profit by setting up pay-per-send +e-mail addresses and collecting all the spam money. You could +sell it back to spammers who don't have big enough botnets to +generate their own, helping bootstrap the currency's value. As +more people catch on, they'll set up more and more phony addresses +to harvest it. By the time the book "How I got rich exploiting +spammers and you can too" is coming out, there'll be too many fake +addresses and the spammers will have to give up. + + + + + > > * Spammer botnets could burn through pay-per-send email filters + > > trivially + > If POW tokens do become useful, and especially if they become money, + > machines will no longer sit idle. Users will expect their computers to + > be earning them money (assuming the reward is greater than the cost to + > operate). A computer whose earnings are being stolen by a botnet will + > be more noticeable to its owner than is the case today, hence we might + > expect that in that world, users will work harder to maintain their + > computers and clean them of botnet infestations. + +One more factor that would mitigate spam if POW tokens have value: +there would be a profit motive for people to set up massive +quantities of fake e-mail accounts to harvest POW tokens from +spam. They'd essentially be reverse-spamming the spammers with +automated mailboxes that collect their POW and don't read the +message. The ratio of fake mailboxes to real people could become +too high for spam to be cost effective. + +The process has the potential to establish the POW token's value +in the first place, since spammers that don't have a botnet could +buy tokens from harvesters. While the buying back would +temporarily let more spam through, it would only hasten the +self-defeating cycle leading to too many harvesters exploiting the +spammers. + +Interestingly, one of the e-gold systems already has a form of +spam called "dusting". Spammers send a tiny amount of gold dust +in order to put a spam message in the transaction's comment field. + If the system let users configure the minimum payment they're +willing to receive, or at least the minimum that can have a +message with it, users could set how much they're willing to get +paid to receive spam. + + + + + + > The last thing we need is to deploy a system designed to burn all + > available cycles, consuming electricity and generating carbon dioxide, + > all over the Internet, in order to produce small amounts of bitbux to + > get emails or spams through. + > + > Can't we just convert actual money in a bank account into bitbux -- + > cheaply and without a carbon tax? Please? + +Ironic if we end up having to choose between economic liberty and +conservation. + +Unfortunately, proof of work is the only solution I've found to +make p2p e-cash work without a trusted third party. Even if I +wasn't using it secondarily as a way to allocate the initial +distribution of currency, PoW is fundamental to coordinating the +network and preventing double-spending. + +If it did grow to consume significant energy, I think it would +still be less wasteful than the labour and resource intensive +conventional banking activity it would replace. The cost would be +an order of magnitude less than the billions in banking fees that +pay for all those brick and mortar buildings, skyscrapers and junk +mail credit card offers. + +Satoshi + + + + + + + > BTW I don't remember if we talked about this, but the other day some + > people were mentioning secure timestamping. You want to be able to + > prove that a certain document existed at a certain time in the past. + > Seems to me that bitcoin's stack of blocks would be perfect for this. + +Indeed, Bitcoin is a distributed secure timestamp server for +transactions. A few lines of code could create a transaction with +an extra hash in it of anything that needs to be timestamped. +I should add a command to timestamp a file that way. + + + + + + + From a thread on p2presearch which starts with my rant about trust +being the root weakness of all conventional financial systems. +http://listcultures.org/pipermail/p2presearch_listcultures.org/2009-February/thread.html + +I've developed a new open source P2P e-cash system called Bitcoin. It's +completely decentralized, with no central server or trusted parties, +because everything is based on crypto proof instead of trust. Give it a +try, or take a look at the screenshots and design paper: + +Download Bitcoin v0.1 at http://www.bitcoin.org + +The root problem with conventional currency is all the trust that's +required to make it work. The central bank must be trusted not to +debase the currency, but the history of fiat currencies is full of +breaches of that trust. Banks must be trusted to hold our money and +transfer it electronically, but they lend it out in waves of credit +bubbles with barely a fraction in reserve. We have to trust them with +our privacy, trust them not to let identity thieves drain our accounts. +Their massive overhead costs make micropayments impossible. + +A generation ago, multi-user time-sharing computer systems had a similar +problem. Before strong encryption, users had to rely on password +protection to secure their files, placing trust in the system +administrator to keep their information private. Privacy could always +be overridden by the admin based on his judgment call weighing the +principle of privacy against other concerns, or at the behest of his +superiors. Then strong encryption became available to the masses, and +trust was no longer required. Data could be secured in a way that was +physically impossible for others to access, no matter for what reason, +no matter how good the excuse, no matter what. + +It's time we had the same thing for money. With e-currency based on +cryptographic proof, without the need to trust a third party middleman, +money can be secure and transactions effortless. + +One of the fundamental building blocks for such a system is digital +signatures. A digital coin contains the public key of its owner. To +transfer it, the owner signs the coin together with the public key of +the next owner. Anyone can check the signatures to verify the chain of +ownership. It works well to secure ownership, but leaves one big +problem unsolved: double-spending. Any owner could try to re-spend an +already spent coin by signing it again to another owner. The usual +solution is for a trusted company with a central database to check for +double-spending, but that just gets back to the trust model. In its +central position, the company can override the users, and the fees +needed to support the company make micropayments impractical. + +Bitcoin's solution is to use a peer-to-peer network to check for +double-spending. In a nutshell, the network works like a distributed +timestamp server, stamping the first transaction to spend a coin. It +takes advantage of the nature of information being easy to spread but +hard to stifle. For details on how it works, see the design paper at +http://www.bitcoin.org/bitcoin.pdf + +The result is a distributed system with no single point of failure. +Users hold the crypto keys to their own money and transact directly with +each other, with the help of the P2P network to check for double-spending. + +Satoshi Nakamoto +http://www.bitcoin.org + + + + + +Martien van Steenbergen Martien at AardRock.COM +Thu Feb 12 08:40:53 CET 2009 + +Very interesting. Is this akin to David Chaum's anonymous digital +money? His concept makes sure money is anonymous unless it is +compromised, i.e. the same money spent more than once. As soon as it's +compromised, the ‘counterfeiter’ is immediately publicly exposed. + +Also, in bitcoin, is there a limited supply of money (that must be +managed)? Or is money created exaclty at the moment of transaction? + +Succes en plezier, + +Martien. + + + + + +Martien van Steenbergen wrote: + > Very interesting. Is this akin to David Chaum's anonymous digital money? + > His concept makes sure money is anonymous unless it is compromised, i.e. + > the same money spent more than once. As soon as it's compromised, the + > ‘counterfeiter’ is immediately publicly exposed. + +It's similar in that it uses digital signatures for coins, but different +in the approach to privacy and preventing double-spending. The +recipient of a Bitcoin payment is able to check whether it is the first +spend or not, and second-spends are not accepted. There isn't an +off-line mode where double-spenders are caught and shamed after the +fact, because that would require participants to have identities. + +To protect privacy, key pairs are used only once, with a new one for +every transaction. The owner of a coin is just whoever has its private key. + +Of course, the biggest difference is the lack of a central server. That +was the Achilles heel of Chaumian systems; when the central company shut +down, so did the currency. + + > Also, in bitcoin, is there a limited supply of money (that must be + > managed)? Or is money created exaclty at the moment of transaction? + +There is a limited supply of money. Circulation will be 21,000,000 +coins. Transactions only transfer ownership. + +Thank you for your questions, + +Satoshi + + + + + +Martien van Steenbergen wrote: + > Reminds me of: + > + > * AardRock » Wizard Rabbit Treasurer + > <http://wiki.aardrock.com/Wizard_Rabbit_Treasurer>; and + > * AardRock » Pekunio <http://wiki.aardrock.com/Pekunio> + +Indeed, it is much like Pekunio in the concept of spraying redundant +copies of every transaction to a number of peers on the network, but the +implementation is not a reputation network like Wizard Rabbit Treasurer. + In fact, Bitcoin does not use reputation at all. It sees the network +as just a big crowd and doesn't much care who it talks to or who tells +it something, as long as at least one of them relays the information +being broadcast around the network. It doesn't care because there's no +way to lie to it. Either you tell it crypto proof of something, or it +ignores you. + + > Are you familiar with Ripple? + +As trust systems go, Ripple is unique in spreading trust around rather +than concentrating it. + +[I've been asked at least 4 other times "have you heard of Ripple?"] + + + + +Michel Bauwens wrote: + > how operational is your project? how soon do you think people will be + > able to use it in real life? + +It's fully operational and the network is growing. If you try the +software, e-mail me your Bitcoin address and I'll send you a few coins. + +We just need to spread the word and keep getting more people interested. + + + + + +Here's a link to the original introduction of the paper on the +Cryptography mailing list. (Inflation issues were superseded by changes +I made later to support transaction fees and the limited circulation +plan. This link is a moving target, this archive page is just a certain +number of days back and the discussion will keep scrolling off to the +next page.) +http://www.mail-archive.com/cryptography@metzdowd.com/mail3.html + +A little follow up when the software was released. +http://www.mail-archive.com/cryptography@metzdowd.com/mail2.html + +My description of how Bitcoin solves the Byzantine Generals' problem: +http://www.bitcoin.org/byzantine.html + ++
Quoting Satoshi Nakamoto <satoshin@gmx.com>: + +> That would be great! I added you (dmp1ce) as a dev to the sourceforge +> project and gave you access to edit the web space and everything. + +Oh, that's not me but another guy who wanted to help. I've seen him on +the Freedomain Radio forum. My name is Martti Malmi and my Sourceforge +account is sirius-m. No problem! + +Thanks for your answered questions, I'll add them to the faq. Here's +what I've done so far: + +**** Bitcoin FAQ **** + +General Questions + +1 What is bitcoin? + +Bitcoin is a peer-to-peer network based anonymous digital +currency. Peer-to-peer (P2P) means that there is no central +authority to issue new money or to keep track of the +transactions. Instead, those tasks are managed collectively by +the nodes of the network. Anonymity means that the real world +identity of the parties of a transaction can be kept hidden from +the public or even from the parties themselves. + +2 How does bitcoin work? + +Bitcoin utilizes public/private key cryptography. When a coin is +transfered from user A to user B, A adds B's public key to the +coin and signs it with his own private key. Now B owns the coin +and can transfer it further. To prevent A from transfering the +already used coin to another user C, a public list of all the +previous transactions is collectively maintained by the network +of bitcoin nodes, and before each transaction the coin's +unusedness will be checked. + +For details, see chapter Advanced Questions. + +3 What is bitcoin's value backed by? + +Bitcoin is valued for the things it can be exchanged to, just +like all the traditional paper currencies are. + +When the first user publicly announces that he will make a pizza +for anyone who gives him a hundred bitcoins, then he can use +bitcoins as payment to some extent - as much as people want pizza +and trust his announcement. A pizza-eating hairdresser who trusts +him as a friend might then announce that she starts accepting +bitcoins as payment for fancy haircuts, and the value of the +bitcoin would be higher - now you could buy pizzas and haircuts +with them. When bitcoins have become accepted widely enough, he +could retire from his pizza business and still be able to use his +bitcoin-savings. + +4 How are new bitcoins created? + +New coins are generated by a network node each time it finds the +solution to a certain calculational problem. In the first 4 years +of the bitcoin network, amount X of coins will be created. The +amount is halved each 4 years, so it will be X/2 after 4 years, +X/4 after 8 years and so on. Thus the total number of coins will +approach 2X. + +5 Is bitcoin safe? + +Yes, as long as you make backups of your coin keys, protect them +with strong passwords and keep keyloggers away from your +computer. If you lose your key or if some unknown attacker +manages to unlock it, there's no way to get your coins back. If +you have a large amount of coins, it is recommended to distribute +them under several keys. You propably wouldn't either keep all +your dollars or euros as paper in a single wallet and leave it +unguarded. + +6 Why should I use bitcoin? + +• Transfer money easily through the internet, without having to + trust third parties. + +• Third parties can't prevent or control your transactions. + +• Be safe from the unfair monetary policies of the monopolistic + central banks and the other risks of centralized power over a + money supply. The limited inflation of the bitcoin system's + money supply is distributed evenly (by CPU power) throughout + the network, not monopolized to a banking elite. + +• Bitcoin's value is likely to increase as the growth of the + bitcoin economy exceeds the inflation rate - consider bitcoin + an investment and start running a node today! + +7 Where can I get bitcoins? + +Find a bitcoin owner and sell her something - MMORPG equipement, +IT support, lawn mowing, dollars or whatever you can trade with +her. You can also generate new bitcoins for yourself by running a +bitcoin network node. + ++
Oh crap, I got your sourceforge usernames mixed up, sorry about that. I +clicked on the wrong e-mail when I was looking for your username. You +now have access. + +Your FAQ looks good so far! + +You can create whatever you want on bitcoin.sourceforge.net. Something +to get new users up to speed on what Bitcoin is and how to use it and +why, and clean and professional looking would help make it look well +established. The site at bitcoin.org was designed in a more +professorial style when I was presenting the design paper on the +Cryptography list, but we're moving on from that phase. + +You should probably change the part about "distribute them under several +keys". When the paper says that it means for the software to do it, and +it does. For privacy reasons, the software already uses a different key +for every transaction, so every piece of money in your wallet is already +on a different key. The exception is when using a bitcoin address, +everything sent to the same bitcoin address is on the same key, which is +a privacy risk if you're trying to be anonymous. The EC-DSA key size is +very strong (sized for the future), we don't practically have to worry +about a key getting broken, but if we did there's the advantage that +someone expending the massive computing resources would only break one +single transaction's worth of money, not someone's whole account. The +details about how to backup your wallet files is in the Q&A dump and +also it's explained in readme.txt and definitely belongs in the FAQ. + +Oh I see, you're trying to address byronm's concern on freedomainradio. + I see what you mean about the password feature being useful to address +that argument. Banks let anyone who has your name and account number +drain your account, and you're not going to get it back from Nigeria. +If someone installs a keylogger on your computer, they could just as +easily get your bank password and transfer money out of your account. +Once we password encrypt the wallet, we'll be able to make a clearer +case that we're much more secure than banks. We use strong encryption, +while banks still let anyone who has your account info draw money from +your account. + + +mmalmi@cc.hut.fi wrote: +> Quoting Satoshi Nakamoto <satoshin@gmx.com>: +> +>> That would be great! I added you (dmp1ce) as a dev to the sourceforge +>> project and gave you access to edit the web space and everything. +> +> Oh, that's not me but another guy who wanted to help. I've seen him on +> the Freedomain Radio forum. My name is Martti Malmi and my Sourceforge +> account is sirius-m. No problem! +> +> Thanks for your answered questions, I'll add them to the faq. Here's +> what I've done so far: +> +> **** Bitcoin FAQ **** +> +> General Questions +> +> 1 What is bitcoin? +> +> Bitcoin is a peer-to-peer network based anonymous digital +> currency. Peer-to-peer (P2P) means that there is no central +> authority to issue new money or to keep track of the +> transactions. Instead, those tasks are managed collectively by +> the nodes of the network. Anonymity means that the real world +> identity of the parties of a transaction can be kept hidden from +> the public or even from the parties themselves. +> +> 2 How does bitcoin work? +> +> Bitcoin utilizes public/private key cryptography. When a coin is +> transfered from user A to user B, A adds B's public key to the +> coin and signs it with his own private key. Now B owns the coin +> and can transfer it further. To prevent A from transfering the +> already used coin to another user C, a public list of all the +> previous transactions is collectively maintained by the network +> of bitcoin nodes, and before each transaction the coin's +> unusedness will be checked. +> +> For details, see chapter Advanced Questions. +> +> 3 What is bitcoin's value backed by? +> +> Bitcoin is valued for the things it can be exchanged to, just +> like all the traditional paper currencies are. +> +> When the first user publicly announces that he will make a pizza +> for anyone who gives him a hundred bitcoins, then he can use +> bitcoins as payment to some extent - as much as people want pizza +> and trust his announcement. A pizza-eating hairdresser who trusts +> him as a friend might then announce that she starts accepting +> bitcoins as payment for fancy haircuts, and the value of the +> bitcoin would be higher - now you could buy pizzas and haircuts +> with them. When bitcoins have become accepted widely enough, he +> could retire from his pizza business and still be able to use his +> bitcoin-savings. +> +> 4 How are new bitcoins created? +> +> New coins are generated by a network node each time it finds the +> solution to a certain calculational problem. In the first 4 years +> of the bitcoin network, amount X of coins will be created. The +> amount is halved each 4 years, so it will be X/2 after 4 years, +> X/4 after 8 years and so on. Thus the total number of coins will +> approach 2X. +> +> 5 Is bitcoin safe? +> +> Yes, as long as you make backups of your coin keys, protect them +> with strong passwords and keep keyloggers away from your +> computer. If you lose your key or if some unknown attacker +> manages to unlock it, there's no way to get your coins back. If +> you have a large amount of coins, it is recommended to distribute +> them under several keys. You propably wouldn't either keep all +> your dollars or euros as paper in a single wallet and leave it +> unguarded. +> +> 6 Why should I use bitcoin? +> +> • Transfer money easily through the internet, without having to +> trust third parties. +> +> • Third parties can't prevent or control your transactions. +> +> • Be safe from the unfair monetary policies of the monopolistic +> central banks and the other risks of centralized power over a +> money supply. The limited inflation of the bitcoin system's +> money supply is distributed evenly (by CPU power) throughout +> the network, not monopolized to a banking elite. +> +> • Bitcoin's value is likely to increase as the growth of the +> bitcoin economy exceeds the inflation rate - consider bitcoin +> an investment and start running a node today! +> +> 7 Where can I get bitcoins? +> +> Find a bitcoin owner and sell her something - MMORPG equipement, +> IT support, lawn mowing, dollars or whatever you can trade with +> her. You can also generate new bitcoins for yourself by running a +> bitcoin network node. +> + ++
Quoting Satoshi Nakamoto <satoshin@gmx.com>: + +> You can create whatever you want on bitcoin.sourceforge.net. Something +> to get new users up to speed on what Bitcoin is and how to use it and +> why, and clean and professional looking would help make it look well +> established. The site at bitcoin.org was designed in a more +> professorial style when I was presenting the design paper on the +> Cryptography list, but we're moving on from that phase. + +Ok. Could you set the project MySQL database passwords so that I can +set up a CMS on the site? I was thinking about WordPress, as it seems +simple and well maintained. I need a password for the read/write +account and one database (or the database admin pass to create it +myself). This can be done somewhere in the project admin pages, I think. + +> You should probably change the part about "distribute them under +> several keys". When the paper says that it means for the software to +> do it, and it does. For privacy reasons, the software already uses a +> different key for every transaction, so every piece of money in your +> wallet is already on a different key. The exception is when using a +> bitcoin address, everything sent to the same bitcoin address is on the +> same key, which is a privacy risk if you're trying to be anonymous. +> The EC-DSA key size is very strong (sized for the future), we don't +> practically have to worry about a key getting broken, but if we did +> there's the advantage that someone expending the massive computing +> resources would only break one single transaction's worth of money, not +> someone's whole account. The details about how to backup your wallet +> files is in the Q&A dump and also it's explained in readme.txt and +> definitely belongs in the FAQ. + +Ok, that's good to know. + +> Oh I see, you're trying to address byronm's concern on freedomainradio. +> I see what you mean about the password feature being useful to address +> that argument. Banks let anyone who has your name and account number +> drain your account, and you're not going to get it back from Nigeria. +> If someone installs a keylogger on your computer, they could just as +> easily get your bank password and transfer money out of your account. +> Once we password encrypt the wallet, we'll be able to make a clearer +> case that we're much more secure than banks. We use strong encryption, +> while banks still let anyone who has your account info draw money from +> your account. + +Well, I guess that's true after all. + ++
Quoting mmalmi@cc.hut.fi: + +>> Oh I see, you're trying to address byronm's concern on freedomainradio. +>> I see what you mean about the password feature being useful to address +>> that argument. Banks let anyone who has your name and account number +>> drain your account, and you're not going to get it back from Nigeria. +>> If someone installs a keylogger on your computer, they could just as +>> easily get your bank password and transfer money out of your account. +>> Once we password encrypt the wallet, we'll be able to make a clearer +>> case that we're much more secure than banks. We use strong encryption, +>> while banks still let anyone who has your account info draw money from +>> your account. +> +> Well, I guess that's true after all. + +...the difference being, though, that not everyone can easily transfer +their regular bank money into an uncontrollable location. In bitcoin +anyone can do it. + ++
mmalmi@cc.hut.fi wrote: +>> You can create whatever you want on bitcoin.sourceforge.net. Something +>> to get new users up to speed on what Bitcoin is and how to use it and +>> why, and clean and professional looking would help make it look well +>> established. The site at bitcoin.org was designed in a more +>> professorial style when I was presenting the design paper on the +>> Cryptography list, but we're moving on from that phase. +> +> Ok. Could you set the project MySQL database passwords so that I can set +> up a CMS on the site? I was thinking about WordPress, as it seems simple +> and well maintained. I need a password for the read/write account and +> one database (or the database admin pass to create it myself). This can +> be done somewhere in the project admin pages, I think. + +They have Wordpress built in, you might not need to set up any database +stuff manually. I enabled the Wordpress feature and added you as an +admin, account sirius-m, e-mail sirius-m@users.sourceforge.net. I'm not +sure how it works out the password for access, maybe it's just based on +being logged in to sourceforge. + +https://apps.sourceforge.net/wordpress/bitcoin/wp-admin/ + +They also have support for MediaWiki if you want it. + +In case you still need it, here's the accounts and passwords for mysql. + +# Access this project's databases over the Internet +https://apps.sourceforge.net/admin/Bitcoin +# Documentation: Guide to MySQL Database Services +http://p.sf.net/sourceforge/mysql +# Hostname: mysql-b (exactly as shown, with no domain suffix) +# Database name prefix: b244765_ -- i.e. "CREATE DATABASE b244765_myapp" +as your ADMIN user. +# RO user: b244765ro (SELECT) +# RW user: b244765rw (SELECT, INSERT, DELETE, UPDATE) +# ADMIN user: b244765admin (has RW account privileges, and CREATE, DROP, +ALTER, INDEX, LOCK TABLES) +# web-access URL: https://mysql-b.sourceforge.net/ +passwords: +b244765ro EaG3nHLL +b244765rw sNKgyt4W +b244765admin Mz589ZKf + + +> ...the difference being, though, that not everyone can easily +> transfer their regular bank money into an uncontrollable location. In +> bitcoin anyone can do it. + +That's true. + +We shouldn't try to use security against identity theft as a selling +point, since it leads into these counter arguments. The current banking +model is already tested and the actual loss percentage is known. Even +if ours is probably better, it's an unknown, so people can imagine +anything. The uncertainty about what the average loss percentage will +be is greater than the likely loss percentage itself. + ++
Quoting Satoshi Nakamoto <satoshin@gmx.com>: + +> They have Wordpress built in, you might not need to set up any database +> stuff manually. +> +> They also have support for MediaWiki if you want it. + +The built-in Wordpress comes with ads, and new plugins and themes need +to be installed by the Sourceforge staff, so I installed Wordpress at +http://bitcoin.sourceforge.net/. The admin page is at .../wp-admin/, +with admin/Wubreches3eS as login. If there's something to add or +change, feel free to. + +The current layout is just a quickly applied free theme, but I'll see +if I can do something more visual myself. + +The MediaWiki might be quite useful for maintaining the FAQ, which +could be retrieved from there to the main site somehow. The wiki says +I need to be an editor or admin to create a new page, which is funny, +because +https://apps.sourceforge.net/mediawiki/bitcoin/index.php?title=Special:ListGroupRights says that users can create +pages. + ++
Lainaus mmalmi@cc.hut.fi: + +> The current layout is just a quickly applied free theme, but I'll see +> if I can do something more visual myself. + +And of course I'll continue improving the contents also. + ++
It's already an improvement, and like you say, there must be better +themes to choose from. + +It would be good to make the download link go directly to the download area: +https://sourceforge.net/project/showfiles.php?group_id=244765 + +I haven't found any way to gain admin control over the mediawiki +feature. It thinks I'm a different S_nakamoto from the one that has +admin access: + User list + * S nakamoto <- it thinks I'm this one + * S nakamoto (admin, editor) + * Sirius-m + +I tried deleting and re-enabling the feature, no help. Oh well. + +mmalmi@cc.hut.fi wrote: +> Quoting Satoshi Nakamoto <satoshin@gmx.com>: +> +>> They have Wordpress built in, you might not need to set up any database +>> stuff manually. +>> +>> They also have support for MediaWiki if you want it. +> +> The built-in Wordpress comes with ads, and new plugins and themes need +> to be installed by the Sourceforge staff, so I installed Wordpress at +> http://bitcoin.sourceforge.net/. The admin page is at .../wp-admin/, +> with admin/Wubreches3eS as login. If there's something to add or change, +> feel free to. +> +> The current layout is just a quickly applied free theme, but I'll see if +> I can do something more visual myself. +> +> The MediaWiki might be quite useful for maintaining the FAQ, which could +> be retrieved from there to the main site somehow. The wiki says I need +> to be an editor or admin to create a new page, which is funny, because +> https://apps.sourceforge.net/mediawiki/bitcoin/index.php?title=Special:ListGroupRights +> says that users can create pages. + + + ++
Quoting Satoshi Nakamoto <satoshin@gmx.com>: + +> I haven't found any way to gain admin control over the mediawiki +> feature. It thinks I'm a different S_nakamoto from the one that has +> admin access: +> User list +> * S nakamoto <- it thinks I'm this one +> * S nakamoto (admin, editor) +> * Sirius-m +> +> I tried deleting and re-enabling the feature, no help. Oh well. + +I think this has something to do with the underscore character in your +username; MediaWiki handles them as spaces. I could ask SF Support +about this. + ++
Quoting mmalmi@cc.hut.fi: + +> Quoting Satoshi Nakamoto <satoshin@gmx.com>: +> +>> I haven't found any way to gain admin control over the mediawiki +>> feature. It thinks I'm a different S_nakamoto from the one that has +>> admin access: +>> User list +>> * S nakamoto <- it thinks I'm this one +>> * S nakamoto (admin, editor) +>> * Sirius-m +>> +>> I tried deleting and re-enabling the feature, no help. Oh well. +> +> I think this has something to do with the underscore character in your +> username; MediaWiki handles them as spaces. I could ask SF Support +> about this. + +Or could you control the MediaWiki with your account nakamoto2? + + ++
Quoting mmalmi@cc.hut.fi: + +> Quoting mmalmi@cc.hut.fi: +> +>> Quoting Satoshi Nakamoto <satoshin@gmx.com>: +>> +>>> I haven't found any way to gain admin control over the mediawiki +>>> feature. It thinks I'm a different S_nakamoto from the one that has +>>> admin access: +>>> User list +>>> * S nakamoto <- it thinks I'm this one +>>> * S nakamoto (admin, editor) +>>> * Sirius-m +>>> +>>> I tried deleting and re-enabling the feature, no help. Oh well. +>> +>> I think this has something to do with the underscore character in your +>> username; MediaWiki handles them as spaces. I could ask SF Support +>> about this. +> +> Or could you control the MediaWiki with your account nakamoto2? + +Oh, sorry for spamming with emails, but the problem is indeed with the +underscore character: +http://apps.sourceforge.net/trac/sourceforge/ticket/300 + ++
You're right, that was it. I went in and granted us access using the +alternate account. + +I like your idea of at least moving the FAQ into the wiki. I've seen +other projects that use the wiki for the FAQ or even the whole site. If +you can figure out how to make it so regular users can edit things, then +anyone who wants to can help. + +mmalmi@cc.hut.fi wrote: +> Quoting mmalmi@cc.hut.fi: +> +>> Quoting mmalmi@cc.hut.fi: +>> +>>> Quoting Satoshi Nakamoto <satoshin@gmx.com>: +>>> +>>>> I haven't found any way to gain admin control over the mediawiki +>>>> feature. It thinks I'm a different S_nakamoto from the one that has +>>>> admin access: +>>>> User list +>>>> * S nakamoto <- it thinks I'm this one +>>>> * S nakamoto (admin, editor) +>>>> * Sirius-m +>>>> +>>>> I tried deleting and re-enabling the feature, no help. Oh well. +>>> +>>> I think this has something to do with the underscore character in your +>>> username; MediaWiki handles them as spaces. I could ask SF Support +>>> about this. +>> +>> Or could you control the MediaWiki with your account nakamoto2? +> +> Oh, sorry for spamming with emails, but the problem is indeed with the +> underscore character: +> http://apps.sourceforge.net/trac/sourceforge/ticket/300 +> + ++
> I like your idea of at least moving the FAQ into the wiki. I've seen +> other projects that use the wiki for the FAQ or even the whole site. +> If you can figure out how to make it so regular users can edit things, +> then anyone who wants to can help. + +The user group privileges seemingly can't be changed without changing +the wiki source files, which can only be done by the SF admins as a +hosted app is concerned. The hosted apps are also otherwise quite +inflexible: you can only login with a SF account, you can't change +themes by yourself and of course there's the ad-bar above the pages. + +I think that replacing the current Wordpress installation at +bitcoin.sourceforge.net with TikiWiki could be a great solution. +TikiWiki supports CMS features, forums, wikis, bug trackers, and many +other features also if needed. Perhaps the best looking example of a +TikiWiki installation is at http://support.mozilla.com/. + +I'll take backup of the current site and see if TikiWiki can be +installed at SF. If it doesn't work, I'll see how wiki/forum features +can be integrated with Wordpress or think of something else. + ++
I couldn't get TikiWiki to work, so I installed Bitweaver, which is a +lightweight TikiWiki derivative. Its functionality looks good for the +purpose and it's easy to customize. + +The admin account password is Wubreches3eS again. New users can +register to the site and write to the wiki and the forums. Next I'm +going to look into how custom menus and custom layouts are made. + ++
Now that the project web is up and running, do you think that setting +up a custom VHOST for the bitcoin.org domain would be a good idea? +Instructions: +http://apps.sourceforge.net/trac/sourceforge/wiki/Custom%20VHOSTs + +Also, could you please send me a link to a SF Logo for statistics, as +instructed at: +http://apps.sourceforge.net/trac/sourceforge/wiki/Use%20of%20sflogo%20for%20statistics%20tracking + ++
The site layout is looking nicer. More impressive looking. + +There are a lot of things you can say on the sourceforge site that I +can't say on my own site. Even so, I'm uncomfortable with explicitly +saying "consider it an investment". That's a dangerous thing to say and +you should delete that bullet point. It's OK if they come to that +conclusion on their own, but we can't pitch it as that. + +A few details: the FAQ says "see section 2.3", but the sections aren't +numbered. Also, could you delete the last sentence on the FAQ "They are +planned to be hidden in v0.1.6, since they're just confusing and +annoying and there's no reason for users to have to see them." -- that's +not really something I meant to say publicly. + +The links to sites to help set up 8333 port forwarding is great. +favicon is a nice touch. + +Someone came up with the word "cryptocurrency"... maybe it's a word we +should use when describing Bitcoin, do you like it? + +Sourceforge is so slow right now I can't even get the login page to +load. Maybe due to the site reorg they just did. I'll keep trying and +try to get you that logo stats thing. + +mmalmi@cc.hut.fi wrote: +> Now that the project web is up and running, do you think that setting up +> a custom VHOST for the bitcoin.org domain would be a good idea? +> Instructions: +> http://apps.sourceforge.net/trac/sourceforge/wiki/Custom%20VHOSTs +> +> Also, could you please send me a link to a SF Logo for statistics, as +> instructed at: +> http://apps.sourceforge.net/trac/sourceforge/wiki/Use%20of%20sflogo%20for%20statistics%20tracking +> +> + ++
> There are a lot of things you can say on the sourceforge site that I +> can't say on my own site. Even so, I'm uncomfortable with explicitly +> saying "consider it an investment". That's a dangerous thing to say +> and you should delete that bullet point. It's OK if they come to that +> conclusion on their own, but we can't pitch it as that. +> +> A few details: the FAQ says "see section 2.3", but the sections aren't +> numbered. Also, could you delete the last sentence on the FAQ "They +> are planned to be hidden in v0.1.6, since they're just confusing and +> annoying and there's no reason for users to have to see them." -- +> that's not really something I meant to say publicly. + +I made the changes. You could also register to the site or use the +admin account to make necessary changes yourself, since the pages are +located in the wiki. + +> Someone came up with the word "cryptocurrency"... maybe it's a word we +> should use when describing Bitcoin, do you like it? + +It sounds good. "The P2P Cryptocurrency" could be considered as the +slogan, even if it's a bit more difficult to say than "The Digital P2P +Cash". It still describes the system better and sounds more +interesting, I think. + +I could notify the mailing list about the new site and invite them to +write on the forums and to the wiki. + ++
mmalmi@cc.hut.fi wrote: +> I made the changes. You could also register to the site or use the admin +> account to make necessary changes yourself, since the pages are located +> in the wiki. + +Thanks, I've been really busy lately. + +I registered username "satoshi". Since there's no SSL login, I want to +mainly use that account with sub-admin powers and use the admin account +as little as possible. I created a "Moderators" group to give my +satoshi account as much editing control as possible without the ability +to overthrow everything. + +There's something weird with the download bar on the right covering +things up, like on the new account registration it covers up the entry +fields unless you make the browser really wide, and the homepage it +covers up the screenshots. (with Firefox) ++
> There's something weird with the download bar on the right covering +> things up, like on the new account registration it covers up the entry +> fields unless you make the browser really wide, and the homepage it +> covers up the screenshots. (with Firefox) + +Problem fixed. I switched to a fixed width layout, which is also +easier to read as the lines are shorter. + ++
Hi, + +I made a post on the Bitcoin developer's forum at SF about a month ago +and sent you, David and Hal a notification about it to your +users.sourceforge.net emails. A few days ago I wondered why no one had +replied, and tried if the SF mail aliases even work - and they didn't, +at least in the case of my account. So could you please forward this +message to the others? + +Best regards, +sirius-m + ++
I know this sounds really retarded, but I still haven't been able to get +the sourceforge login page to load, so I haven't been able to read it +either. https://sourceforge.net/account/login.php + +Hal isn't currently actively involved. He helped me a lot defending the +design on the Cryptography list, and with initial testing when it was +first released. He carried this torch years ago with his Reusable Proof +Of Work (RPOW). + +I'm not going to be much help right now either, pretty busy with work, +and need a break from it after 18 months development. + +It would help if there was something for people to use it for. We need +an application to bootstrap it. Any ideas? + +There are donors I can tap if we come up with something that needs +funding, but they want to be anonymous, which makes it hard to actually +do anything with it. + +mmalmi@cc.hut.fi wrote: +> Hi, +> +> I made a post on the Bitcoin developer's forum at SF about a month ago +> and sent you, David and Hal a notification about it to your +> users.sourceforge.net emails. A few days ago I wondered why no one had +> replied, and tried if the SF mail aliases even work - and they didn't, +> at least in the case of my account. So could you please forward this +> message to the others? +> +> Best regards, +> sirius-m +> + ++
> I know this sounds really retarded, but I still haven't been able to +> get the sourceforge login page to load, so I haven't been able to read +> it either. https://sourceforge.net/account/login.php + +That's strange, I haven't had any problems with that. Clearly the +banking establishment got scared and banned your account (and founded +www.bitcoin.com in attempt to fetch the trademark), eh. You could ask +if the SF staff at sfnet_ops@corp.sourceforge.com can help you. + +> I'm not going to be much help right now either, pretty busy with work, +> and need a break from it after 18 months development. + +Oh, that sounds tough. Take your time. + +> It would help if there was something for people to use it for. We need +> an application to bootstrap it. Any ideas? + +I've been thinking about a currency exchange service that sells and +buys bitcoins for euros and other currencies. Direct exchangeability +to an existing currency would give bitcoin the best possible initial +liquidity and thus the best adoptability for new users. Everyone +accepts payment in coins that are easily exchangeable for common +money, but not everyone accepts payment in coins that are only +guaranteed to buy a specific kind of a product. + +The instructional formula for stable pricing in euros would be something like: + +(The amount of euros that you're ready to trade for bc + the +euro-value of goods that other people are selling for bc) / +(Total number of bc in circulation - own bc assets). + +So if there's a total of 1M bitcoins of which you own 100K, you have +1000 eur and no one else trades with bitcoin yet, you can safely offer the +exchange rate of 1 eur / 900 bc, without having to devaluate +even if everyone sold their coins to you. This could be guaranteed as +the minimal exchange rate, but the rate could be also higher when +demand is high. + +Initially, when others aren't yet offering anything for bitcoins, you +can increase your bitcoin assets cheaply - for the minimum price that +people bother to do the transaction for. If you had all the existing +coins for yourself, you could set the price to whatever you want, +because you wouldn't face the risk of having to buy even a single coin +with that price (not counting the new money created by others). So +it's best to get as much coins as possible before backing bitcoin with +all your available euros. + +Profit can be gained, as usually in trading, by having a margin +between the buying and selling prices. Making Bitcoin as usable as +possible will make the business run better, as people do not only want +to sell all their coins to you, but also want to buy them and use them +as a medium of exchange. + +At its simplest this exchange service could be a website where +traders, who can be individual persons, can post their rates, and +random users can leave trade requests. Some kind of an average rate +estimate could be shown on the site. Small-scale trading by +individuals would be outside legal hassle in most countries, and +putting all the eggs in the same basket would be avoided. + +Another idea, which could be additional to the previous one, would be +an automated exchange service. The service would automatically +calculate the exchange rate and perform the transactions. This would +be nicer to the user: completion of the transaction request would be +certain and instantaneous. Making this service might actually be quite +easy if there was a command line interface to Bitcoin: just take any +web application framework and use PayPal back-end integration to +automatically send euros when Bitcoins are received, and vice versa. +This kind of business would also work great on larger scale if you set +up a company and take care of all the bureaucracy needed to practice +currency exchange. (I actually have a registered company that I've +used for billing of some IT work, I could use that as a base.) + +This exchange business thing is something that I'd be interested in +doing, and I also have the sufficient technical skills to do it. +Although, before this can be done, there should be a non-alpha version +of Bitcoin (and the command line interface / API). + +> There are donors I can tap if we come up with something that needs +> funding, but they want to be anonymous, which makes it hard to actually +> do anything with it. + +If this gets started, donors / high-risk investors would be very +welcome to bring capital for the currency's backup. + +So, what do you think about the idea? Note that this is not something +that I'm asking you to do (unless you want to) if you're busy with +other things. I can do it myself, if I get positive reviews about the +plan. + ++
I've had quite a few errors coming up when trying to build the +third-party libraries and adding them to the Bitcoin build. Do you +happen to have a ready-to-build package that you could upload to the +CVS or somewhere else? I use mingw + msys, but I guess I could try +Visual C++ also, if it's easier that way. + ++
I got it compile with MinGW + MSYS when I used wxPack instead of just +wxWidgets. Maybe wxAdditions was required. The bitcoin.exe filesize +was 52MB though, I should see how that can be fixed. + +Next I'm going to implement the "minimize to tray" feature and the +option to autostart Bitcoin with Windows, so the number of nodes +online would stay higher. After that I could see if I can do a Linux +port or the command line interface needed for web app frameworks. + +Drop by at #bitcoin-dev on FreeNode some time if you use IRC. + +And again, thanks for the great work you've done with Bitcoin. + +Quote mmalmi@cc.hut.fi: + +> I've had quite a few errors coming up when trying to build the +> third-party libraries and adding them to the Bitcoin build. Do you +> happen to have a ready-to-build package that you could upload to the +> CVS or somewhere else? I use mingw + msys, but I guess I could try +> Visual C++ also, if it's easier that way. + + + ++
That's a good point that since you know how many coins exist and how +fast new ones are created, you could set a support price based on the +amount of legacy currency you have and be sure you'll have enough to +meet all demands. I had imagined an auction, but it would be far +simpler and more confidence inspiring to back it at a specific exchange +rate. + +Offering currency to back bitcoins would attract freebie seekers, with +the benefit of attracting a lot of publicity. At first it would mostly +be seen as a way to get free money for your computer's idle time. Maybe +pitched like help support the future of e-commerce and get a little +money for your computer's spare cycles. As people cash in and actually +get paid, word would spread exponentially. + +It might help to keep the minimum transaction size above an amount which +a typical user would be able to accumulate with one computer, so that +users have to trade with each other for someone to collect enough to +cash in. Aggregators would set up shop to buy bitcoins in smaller +increments, which would add confidence in users ability to sell bitcoins +if there are more available buyers than just you. + +People would obviously be sceptical at first that the backing will hold +up against an onslaught of people trying to get the free money, but as +the competition raises the proof-of-work difficulty, it should become +clear that bitcoins stay scarce. People will see that they can't just +get all the bitcoins they want. It would establish a minimum value +under bitcoins enabling them to be used for other purposes if, +hopefully, other purposes are waiting for something to use. + +>> It would help if there was something for people to use it for. We need +>> an application to bootstrap it. Any ideas? +> +> I've been thinking about a currency exchange service that sells and +> buys bitcoins for euros and other currencies. Direct exchangeability +> to an existing currency would give bitcoin the best possible initial +> liquidity and thus the best adoptability for new users. Everyone +> accepts payment in coins that are easily exchangeable for common +> money, but not everyone accepts payment in coins that are only +> guaranteed to buy a specific kind of a product. + +That would be more powerful if there was also some narrow product market +to use it for. Some virtual currencies like Tencent's Q coin have made +headway with virtual goods. It would be sweet if there was some way to +horn in on a market like that as the official virtual currency gets +clamped down on with limitations. Not saying it can't work without +something, but a ready specific transaction need that it fills would +increase the certainty of success. + +> At its simplest this exchange service could be a website where +> traders, who can be individual persons, can post their rates, and +> random users can leave trade requests. Some kind of an average rate +> estimate could be shown on the site. Small-scale trading by +> individuals would be outside legal hassle in most countries, and +> putting all the eggs in the same basket would be avoided. + +Basically like an eBay site with user reviews to try to establish which +sellers can be trusted. The escrow feature will help but not solve +everything. It would be far more work to set up such a site than just +to set up a single exchange site of your own, and there won't be enough +users to make it go until later. I'm thinking it wouldn't make sense to +make an eBay type site until later. + +> Another idea, which could be additional to the previous one, would be +> an automated exchange service. The service would automatically +> calculate the exchange rate and perform the transactions. This would +> be nicer to the user: completion of the transaction request would be +> certain and instantaneous. Making this service might actually be quite +> easy if there was a command line interface to Bitcoin: just take any +> web application framework and use PayPal back-end integration to +> automatically send euros when Bitcoins are received, and vice versa. +> This kind of business would also work great on larger scale if you set +> up a company and take care of all the bureaucracy needed to practice +> currency exchange. (I actually have a registered company that I've +> used for billing of some IT work, I could use that as a base.) + +Even if you had automation, you'd probably want to review orders +manually before processing them anyway. It wouldn't be hard to process +orders by hand, especially at first. You could always set a minimum +order size to keep orders more infrequent. + +> This exchange business thing is something that I'd be interested in +> doing, and I also have the sufficient technical skills to do it. +> Although, before this can be done, there should be a non-alpha version +> of Bitcoin (and the command line interface / API). +> +> If this gets started, donors / high-risk investors would be very +> welcome to bring capital for the currency's backup. +> +> So, what do you think about the idea? Note that this is not something +> that I'm asking you to do (unless you want to) if you're busy with +> other things. I can do it myself, if I get positive reviews about the +> plan. + +That's great, I could probably get a donor to send currency to you which +you convert to euros and pay out through methods that are convenient for +users. I don't want to do an exchange business myself, but it can be +done independently of me. Like you say, there is more software +development to be done first, and also I'd like to keep trying for a +while to think of a bootstrap application to use bitcoins for. I've had +some ideas that could only be done before an exchange exists. + +BTW, I tried to buy bitcoin.com before I started but there was no +chance, it's owned by a professional domain speculator. It's normal for +open source projects to have .org so it's not so bad. + ++
Glad that worked, it's a pain that the dependencies are so big and hard +to build. Some of them give little attention to the Windows build. +Next time I update to the latest versions, maybe I'll lay everything out +in one directory tree and bundle the whole thing up into a giant archive. + +I'm not sure they had wxPack before. I'm glad they got that so everyone +doesn't have to build wxWidgets themselves. OpenSSL is the harder one +to build. + +I reduced the EXE size by running strip.exe on it to take out the debug +symbols. That's with mingw. That's the better compiler, I only used VC + for debugging. + +mmalmi@cc.hut.fi wrote: +> I got it compile with MinGW + MSYS when I used wxPack instead of just +> wxWidgets. Maybe wxAdditions was required. The bitcoin.exe filesize was +> 52MB though, I should see how that can be fixed. +> +> Next I'm going to implement the "minimize to tray" feature and the +> option to autostart Bitcoin with Windows, so the number of nodes online +> would stay higher. After that I could see if I can do a Linux port or +> the command line interface needed for web app frameworks. +> +> Drop by at #bitcoin-dev on FreeNode some time if you use IRC. +> +> And again, thanks for the great work you've done with Bitcoin. +> +> Quote mmalmi@cc.hut.fi: +> +>> I've had quite a few errors coming up when trying to build the +>> third-party libraries and adding them to the Bitcoin build. Do you +>> happen to have a ready-to-build package that you could upload to the +>> CVS or somewhere else? I use mingw + msys, but I guess I could try +>> Visual C++ also, if it's easier that way. +> +> +> + ++
> It might help to keep the minimum transaction size above an amount +> which a typical user would be able to accumulate with one computer, so +> that users have to trade with each other for someone to collect enough +> to cash in. Aggregators would set up shop to buy bitcoins in smaller +> increments, which would add confidence in users ability to sell +> bitcoins if there are more available buyers than just you. + +That might be a good idea. + +> That would be more powerful if there was also some narrow product +> market to use it for. Some virtual currencies like Tencent's Q coin +> have made headway with virtual goods. It would be sweet if there was +> some way to horn in on a market like that as the official virtual +> currency gets clamped down on with limitations. Not saying it can't +> work without something, but a ready specific transaction need that it +> fills would increase the certainty of success. + +Bitcoin could be promoted to the users of virtual communities like +World of Warcraft and Second Life, which both have millions of users. +It would be great if not only peer-to-peer item traders, but also +providers of some existing virtual services that already have a lot of +customers, were to adopt the currency early on. + +A programming question: What do you think about using the Boost's +program_options to write settings like the transaction fee into a file +bitcoin.config? Or is it better to save them in the database as it is +now? Having a config file would make it easier to change the settings +when running the program on a remote server with a console access only. + ++
> Next I'm going to implement the "minimize to tray" feature and the +> option to autostart Bitcoin with Windows, so the number of nodes online +> would stay higher. + +Now that I think about it, you've put your finger on the most important +missing feature right now that would make an order of magnitude +difference in the number of nodes. Without auto-run, we'll almost never +retain nodes after an initial tryout interest. Auto-running as a +minimized tray icon by default was the key to success for the early file +sharing networks. It wouldn't have been appropriate for v0.1.0 when +stability wasn't a given yet, but now it's good and stable. This is a +must-have feature for the next release so any users that come back to +try the new version we hopefully retain this time. + +I think the most user friendly way of doing auto-run is putting an icon +in the Startup folder. I see OpenOffice.org and a number of other +things on my computer do it that way. The other way, creating a runas +registry entry, is not easily visible or editable by users, I've never +liked that much. I guess what we want is an auto-run option that's on +by default, if the option is changed then it creates or deletes the +startup icon. + +While it's tempting to do a Linux port, once we do it we have that extra +work with every release from then on. I'd rather put it off a while +longer. Auto-run might give us 300% more nodes while Linux might give +us 3% more. Linux would help server farms, but actually we'd like to +favour individual users. Someone reported that it works fine in WinE. ++
Just for information: I committed my working copy to the svn/branches. +There's the minimize to tray feature and some other changes. It's +nicer to run in the background now, but it's still incomplete and I'm +working on it. The bugs are listed in bugs.txt. + +Did you get your Sourceforge account work yet? + ++
That's great, that's a good step forward. + +Yes, I worked out the sourceforge login problem, it was some tricky +thing on the login page that exposed a quirky bug in a browser add-in. + +mmalmi@cc.hut.fi wrote: +> Just for information: I committed my working copy to the svn/branches. +> There's the minimize to tray feature and some other changes. It's nicer +> to run in the background now, but it's still incomplete and I'm working +> on it. The bugs are listed in bugs.txt. +> +> Did you get your Sourceforge account work yet? +> + ++
I made a Windows installer for the latest version of Bitcoin, which +includes the autostart and minimize to tray features. The installer +makes a start menu shortcut and a startup registry entry. I first +implemented the autostart with a shortcut to the startup folder, but I +found out that it doesn't always work by default and ended up doing it +with a registry entry. The registry entry is removed by the +uninstaller and can be also disabled from the options menu, so I don't +think it's such a big menace to the user after all. + +I made the installer with NSIS, and the nsi script can be found in the SVN. + +Could you add the installer to the SF download page? Here's the file: +http://bitcoin.sourceforge.net/uploads/Bitcoin_setup.exe + +There are some new users registered to the bitcoin.sf.net site. One of +them just announced that he's trading Bitcoins for dollars. Here's his +site: http://newlibertystandard.wetpaint.com/. Making an exchange +service first seemed a bit premature for the time being, but on the +other hand it's good that people show interest towards the project, +and this might attract even more interested people (and hopefully more +developers). I just sent the guy an email. + ++
Thanks for that. I'm still merging in some changes I had that need to +go in before any next release. Some things based on questions and +feedback I've received that'll reduce confusion. I'll probably enable +multi-proc generating support, and hopefully make it safe to just backup +wallet.dat to backup your money. It's good to be coding again! + +I'm going to hide the transaction fee setting, which is completely not +needed and only serves to confuse people. It was only there for testing +and demonstration of a technical detail that can only be needed in the +far away future, if ever, but was necessary to implement at the +beginning to make it possible later. + +What was the problem with the shortcut in the startup folder? If you +could send me the code, I'd like to take another look and see if I can +see what the problem was. The first strcat in the registry code should +be strcpy, otherwise it would fail intermittently. If the same code was +in the shortcut one, maybe that was the problem. + +It's encouraging to see more people taking an interest such as that +NewLibertyStandard site. I like his approach to estimating the value +based on electricity. It's educational to see what explanations people +adopt. They may help discover a simplified way of understanding it that +makes it more accessible to the masses. Many complex concepts in the +world have a simplistic explanation that satisfies 80% of people, and a +complete explanation that satisfies the other 20% who see the flaws in +the simplistic explanation. + +mmalmi@cc.hut.fi wrote: +> I made a Windows installer for the latest version of Bitcoin, which +> includes the autostart and minimize to tray features. The installer +> makes a start menu shortcut and a startup registry entry. I first +> implemented the autostart with a shortcut to the startup folder, but I +> found out that it doesn't always work by default and ended up doing it +> with a registry entry. The registry entry is removed by the uninstaller +> and can be also disabled from the options menu, so I don't think it's +> such a big menace to the user after all. +> +> I made the installer with NSIS, and the nsi script can be found in the SVN. +> +> Could you add the installer to the SF download page? Here's the file: +> http://bitcoin.sourceforge.net/uploads/Bitcoin_setup.exe +> +> There are some new users registered to the bitcoin.sf.net site. One of +> them just announced that he's trading Bitcoins for dollars. Here's his +> site: http://newlibertystandard.wetpaint.com/. Making an exchange +> service first seemed a bit premature for the time being, but on the +> other hand it's good that people show interest towards the project, and +> this might attract even more interested people (and hopefully more +> developers). I just sent the guy an email. +> + ++
I got it, I see you checked in the startup folder code before changing +it to registry. I don't see any visible problems in the code. I guess +it depends what exactly the problem was with it not always working by +default. Was there a Vista/UAC security problem? + +Satoshi Nakamoto wrote: +> What was the problem with the shortcut in the startup folder? If you +> could send me the code, I'd like to take another look and see if I can +> see what the problem was. The first strcat in the registry code should +> be strcpy, otherwise it would fail intermittently. If the same code was +> in the shortcut one, maybe that was the problem. +> +> mmalmi@cc.hut.fi wrote: +>> I made a Windows installer for the latest version of Bitcoin, which +>> includes the autostart and minimize to tray features. The installer +>> makes a start menu shortcut and a startup registry entry. I first +>> implemented the autostart with a shortcut to the startup folder, but I +>> found out that it doesn't always work by default and ended up doing it +>> with a registry entry. The registry entry is removed by the +>> uninstaller and can be also disabled from the options menu, so I don't +>> think it's such a big menace to the user after all. + ++
Well, the code worked and made a shortcut in the startup folder. For +some reason it didn't automatically start when booting, but worked +fine when you clicked on it in the menu. Now I tried making a shortcut +manually, and this time it works on autostart, don't know why. I could +try again with the older code. + +> I got it, I see you checked in the startup folder code before changing +> it to registry. I don't see any visible problems in the code. I guess +> it depends what exactly the problem was with it not always working by +> default. Was there a Vista/UAC security problem? +> +> Satoshi Nakamoto wrote: +>> What was the problem with the shortcut in the startup folder? If +>> you could send me the code, I'd like to take another look and see +>> if I can see what the problem was. The first strcat in the +>> registry code should be strcpy, otherwise it would fail +>> intermittently. If the same code was in the shortcut one, maybe +>> that was the problem. +>> +>> mmalmi@cc.hut.fi wrote: +>>> I made a Windows installer for the latest version of Bitcoin, +>>> which includes the autostart and minimize to tray features. The +>>> installer makes a start menu shortcut and a startup registry +>>> entry. I first implemented the autostart with a shortcut to the +>>> startup folder, but I found out that it doesn't always work by +>>> default and ended up doing it with a registry entry. The registry +>>> entry is removed by the uninstaller and can be also disabled from +>>> the options menu, so I don't think it's such a big menace to the +>>> user after all. + + + + ++
It's possible Bitcoin ran and bailed out because something was wrong. +debug.log should tell something if that was the case. What OS are you +using? I wonder if we need Admin privilege and don't realize it. Stuff +that requires Admin can't start on startup on Vista. + +Program shortcuts have multiple tabs of settings with lots of little +details. I'll try the startup folder code and see if I can reproduce +the problem. Every other systray icon on my computer is in the startup +folder, and it makes it easy for users to manage all their autoruns in +one place. The things in the registry key tend to be devious hidden +bloatware. + +I implemented the code to flush wallet.dat whenever it's closed so we'll +be able to tell users they only need to backup wallet.dat. You can +restore just wallet.dat and it'll re-download the rest. I'll have to do +another stress test before release. + +mmalmi@cc.hut.fi wrote: +> Well, the code worked and made a shortcut in the startup folder. For +> some reason it didn't automatically start when booting, but worked fine +> when you clicked on it in the menu. Now I tried making a shortcut +> manually, and this time it works on autostart, don't know why. I could +> try again with the older code. +> +>> I got it, I see you checked in the startup folder code before changing +>> it to registry. I don't see any visible problems in the code. I guess +>> it depends what exactly the problem was with it not always working by +>> default. Was there a Vista/UAC security problem? +>> +>> Satoshi Nakamoto wrote: +>>> What was the problem with the shortcut in the startup folder? If +>>> you could send me the code, I'd like to take another look and see +>>> if I can see what the problem was. The first strcat in the +>>> registry code should be strcpy, otherwise it would fail +>>> intermittently. If the same code was in the shortcut one, maybe +>>> that was the problem. +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> I made a Windows installer for the latest version of Bitcoin, +>>>> which includes the autostart and minimize to tray features. The +>>>> installer makes a start menu shortcut and a startup registry +>>>> entry. I first implemented the autostart with a shortcut to the +>>>> startup folder, but I found out that it doesn't always work by +>>>> default and ended up doing it with a registry entry. The registry +>>>> entry is removed by the uninstaller and can be also disabled from +>>>> the options menu, so I don't think it's such a big menace to the +>>>> user after all. +> +> +> +> + ++
> It's possible Bitcoin ran and bailed out because something was wrong. +> debug.log should tell something if that was the case. What OS are you +> using? I wonder if we need Admin privilege and don't realize it. +> Stuff that requires Admin can't start on startup on Vista. + +I'm using XP. I recompiled the older revision and this time the +startup shortcut works. It also works when testing on Vista +(non-admin). Maybe I just missed something the previous time. + +> Program shortcuts have multiple tabs of settings with lots of little +> details. I'll try the startup folder code and see if I can reproduce +> the problem. Every other systray icon on my computer is in the startup +> folder, and it makes it easy for users to manage all their autoruns in +> one place. The things in the registry key tend to be devious hidden +> bloatware. + +Here it's the other way around, I have all my startup programs in the +registry. But maybe the shortcut method is nicer for the user, if it +works just as well + ++
Yeah, I put back your startup folder shortcut code and it started fine +for me too on XP and Vista. For good measure, I changed it to make the +shortcut settings look identical to one I manually created. I set the +working directory to where the EXE is since that's where debug.log is +created, otherwise windows puts it in some weird directory. I didn't +change the setup script yet. + +I checked everything in to SVN (thanks for setting that up) +- multi-proc generate +- flush wallet.dat after every change so the DB doesn't leave that stuff +in the transaction logs +- view menu checkbox to hide all generated coins so you can see just +your payment transactions +- disabled transaction fee option +- made the minimize to tray options similar to Firefox's MinimizeToTray +- bunch of other misc changes since the 0.1.5 release + +I made it not show non-accepted generated coins. It won't show +generated coins until they have at least one confirmation (one block +linked after it), so usually they'll just never be seen. Occasionally a +generated coin that was displayed might disappear because it became not +accepted later. I don't think anyone would notice the occasional +non-accepteds if we didn't point them out in the UI. People have told +me they find it annoying to have to look at them, as they're permanently +displayed in the transaction record. + +I still have more testing to do. I guess we gotta test Windows 7 now. + +mmalmi@cc.hut.fi wrote: +>> It's possible Bitcoin ran and bailed out because something was wrong. +>> debug.log should tell something if that was the case. What OS are you +>> using? I wonder if we need Admin privilege and don't realize it. +>> Stuff that requires Admin can't start on startup on Vista. +> +> I'm using XP. I recompiled the older revision and this time the startup +> shortcut works. It also works when testing on Vista (non-admin). Maybe I +> just missed something the previous time. +> +>> Program shortcuts have multiple tabs of settings with lots of little +>> details. I'll try the startup folder code and see if I can reproduce +>> the problem. Every other systray icon on my computer is in the startup +>> folder, and it makes it easy for users to manage all their autoruns in +>> one place. The things in the registry key tend to be devious hidden +>> bloatware. +> +> Here it's the other way around, I have all my startup programs in the +> registry. But maybe the shortcut method is nicer for the user, if it +> works just as well +> + ++
Liberty Standard wrote: +> Do you Windows users experience occasional Bitcoin crashes? +> Lately Bitcoin running in wine-1.0.1 has been crashing frequently. I was +> just wondering whether this is a Wine issue or a Bitcoin issue. + +I haven't had any reports of crashes in v0.1.5. It's been rock solid +for me on Windows. I think it must be Wine related. If you get another +crash in Wine and it prints anything on the terminal, e-mail me and I +may be able to figure out what happened, maybe something I can work +around. Martti and I have been working on a new version to release soon +and it would be nice to get any Wine fixes in there. + +> The following four lines print from the terminal when I start Bitcoin. +> fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot +> fixme:toolhelp:Heap32ListFirst : stub +> fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot +> fixme:toolhelp:Heap32ListFirst : stub + +Those don't look like anything to worry about. Probably functions +unimplemented by Wine that are harmlessly stubbed out. + +> I previously wasn't starting Bitcoin from the terminal, so I don't know what +> gets printed out when it crashes, but I'll reply with the results the next +> time it crashes. +> +> While Bitcoin first downloads previously completed blocks, the file +> debug.log grows grows to 17.4 MB and then stops growing. I imagine it will +> continue to grow as more bitcoins are completed. + +You can delete debug.log occasionally if you don't want to take the disk +space. It's just status messages that help with debugging. + +bitcoin.sourceforge.net looks fine now. Maybe sourceforge was doing +some maintenance. + +Satoshi + +------------------------------------------------------------------------------ +Come build with us! The BlackBerry(R) Developer Conference in SF, CA +is the only developer event you need to attend this year. Jumpstart your +developing skills, take BlackBerry mobile applications to market and stay +ahead of the curve. Join us from November 9 - 12, 2009. Register now! +http://p.sf.net/sfu/devconference +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
Any idea what's going on with it? Every time I look, it's fine. + + +Eugen Leitl wrote: +On Sat, Oct 24, 2009 at 12:55:06AM +0100, Satoshi Nakamoto wrote: + > > bitcoin.sourceforge.net looks fine now. Maybe sourceforge was doing + +Doesn't work right now. + + > > some maintenance. + + +Liberty Standard wrote: + > In case you weren't aware, the Bitcoin website is down. + > + > http://bitcoin.sourceforge.net/ + > + > ----- + > You are running bitweaver in TEST mode + > + > * Click here to log a bug, if this appears to be an error with the + > application. + > * Go here to begin the installation process, if you haven't done so + > already. + > * To hide this message, please set the IS_LIVE constant to TRUE +in your + > kernel/config_inc.php file. ++
IS_LIVE option was indeed set to false, but it only affects the +visibility of error messages to user. I've noticed the site being slow +at times, sometimes taking up to 30 seconds to load. I think it's +related to the Sourceforge hosting. Bitweaver should be among the +lightest PHP CMS'es, but I can check out if there are any issues to it. + +Off the topic, do you think that we could use Boost's thread and +socket libraries instead of the Windows-specific ones? Are there other +windows-only-functions used in the code? + +> Any idea what's going on with it? Every time I look, it's fine. +> +> +> Eugen Leitl wrote: +> On Sat, Oct 24, 2009 at 12:55:06AM +0100, Satoshi Nakamoto wrote: +>> > bitcoin.sourceforge.net looks fine now. Maybe sourceforge was doing +> +> Doesn't work right now. +> +>> > some maintenance. +> +> +> Liberty Standard wrote: +>> In case you weren't aware, the Bitcoin website is down. +>> +>> http://bitcoin.sourceforge.net/ +>> +>> ----- +>> You are running bitweaver in TEST mode +>> +>> * Click here to log a bug, if this appears to be an error with the +>> application. +>> * Go here to begin the installation process, if you haven't done so +>> already. +>> * To hide this message, please set the IS_LIVE constant to TRUE in your +>> kernel/config_inc.php file. + + + ++
Sourceforge is just so darn slow. I don't know what else to do though. + It's such a standard, more often than not any given project has a +projectname.sourceforge.net site. When I see whatever.sourceforge.net +in a google search, I assume that's the official site. + +Is there a way to make Bitweaver allow users to edit (and maybe delete) +their own messages in the forum? + +Getting antsy to port to Linux? It's not a decision to be taken lightly +because once it's done, it doubles my testing and building workload. +Although I am worried about Liberty's Wine crashes. + +I've tried to be as portable as possible and use standard C stuff +instead of Windows calls. The threading is _beginthread which is part +of the standard C library. wxWidgets has wxCriticalSection stuff we can +use. The sockets code is send/recv stuff which I think is the same as +unix because Microsoft ported sockets from BSD. We need direct control +over sockets, it wouldn't be a good idea to get behind an abstraction +layer. wxWidgets is a good place to look for cross-platform support +functions. I want to avoid #ifdefing up the code if we can. Anything +that's used more than once probably becomes a function in util.cpp that +has the #ifdef in it. + +BTW, I have a lot of uncommitted changes right now because it includes +some crucial protocol transitions that can't be unleashed on the network +until I've tested the heck out of it. It shouldn't be too much longer. + +Can you make the setup uninstall the Startup folder icon? I figure it +should install and uninstall an icon in a regular program group, and +just uninstall the Startup folder one. I guess it doesn't matter that +much whether it installs and uninstalls the Startup folder icon or just +uninstalls it. + +mmalmi@cc.hut.fi wrote: +> IS_LIVE option was indeed set to false, but it only affects the +> visibility of error messages to user. I've noticed the site being slow +> at times, sometimes taking up to 30 seconds to load. I think it's +> related to the Sourceforge hosting. Bitweaver should be among the +> lightest PHP CMS'es, but I can check out if there are any issues to it. +> +> Off the topic, do you think that we could use Boost's thread and socket +> libraries instead of the Windows-specific ones? Are there other +> windows-only-functions used in the code? +> +>> Any idea what's going on with it? Every time I look, it's fine. +>> +>> +>> Eugen Leitl wrote: +>> On Sat, Oct 24, 2009 at 12:55:06AM +0100, Satoshi Nakamoto wrote: +>>> > bitcoin.sourceforge.net looks fine now. Maybe sourceforge was doing +>> +>> Doesn't work right now. +>> +>>> > some maintenance. +>> +>> +>> Liberty Standard wrote: +>>> In case you weren't aware, the Bitcoin website is down. +>>> +>>> http://bitcoin.sourceforge.net/ +>>> +>>> ----- +>>> You are running bitweaver in TEST mode +>>> +>>> * Click here to log a bug, if this appears to be an error with the +>>> application. +>>> * Go here to begin the installation process, if you haven't done so +>>> already. +>>> * To hide this message, please set the IS_LIVE constant to TRUE +>>> in your +>>> kernel/config_inc.php file. +> +> +> + ++
> Sourceforge is just so darn slow. I don't know what else to do though. +> It's such a standard, more often than not any given project has a +> projectname.sourceforge.net site. When I see whatever.sourceforge.net +> in a google search, I assume that's the official site. +> +> Is there a way to make Bitweaver allow users to edit (and maybe delete) +> their own messages in the forum? + +It's not possible with the current version of Bitweaver. Bitweaver's +wiki and forum packages aren't so very highly advanced. SF hosting +also has its disadvantages, like the occasional slowness and lack of +e-mailer and user IP retrieving. I've been considering to buy web +hosting from prq.se (the host of Wikileaks and Pirate Bay, among +others) to be used later for the exchange service. I could maybe host +the project site there as well, under a separate user account for +better security. There I could set up Drupal or TikiWiki, which are +more advanced and have quite a lot bigger and more active +developer/user communities than Bitweaver. + +> Getting antsy to port to Linux? It's not a decision to be taken +> lightly because once it's done, it doubles my testing and building +> workload. Although I am worried about Liberty's Wine crashes. +> +> I've tried to be as portable as possible and use standard C stuff +> instead of Windows calls. The threading is _beginthread which is part +> of the standard C library. wxWidgets has wxCriticalSection stuff we +> can use. The sockets code is send/recv stuff which I think is the same +> as unix because Microsoft ported sockets from BSD. We need direct +> control over sockets, it wouldn't be a good idea to get behind an +> abstraction layer. wxWidgets is a good place to look for +> cross-platform support functions. I want to avoid #ifdefing up the +> code if we can. Anything that's used more than once probably becomes a +> function in util.cpp that has the #ifdef in it. + +Ok. I replaced the Windows thread and socket library includes with +their POSIX equivalents, and now it only gives a few errors, mostly svn/branches, it doesn't need to be an official release yet. + +> Can you make the setup uninstall the Startup folder icon? I figure it +> should install and uninstall an icon in a regular program group, and +> just uninstall the Startup folder one. I guess it doesn't matter that +> much whether it installs and uninstalls the Startup folder icon or just +> uninstalls it. + +I'll do it. + ++
I'll convert the CriticalSection code to wxCriticalSection and upload it +to SVN (it's a little tricky). I don't know what to do for +TryEnterCriticalSection though. I think I'm almost ready to check +everything in. + +You're probably right, it's about time to do a linux build. I've been +working on getting my linux machine set up and building the dependencies. + +> Ok. I replaced the Windows thread and socket library includes with their +> POSIX equivalents, and now it only gives a few errors, mostly from the +> CriticalSections. If I make it work, I'll put it into svn/branches, it +> doesn't need to be an official release yet. + + ++
> I'll convert the CriticalSection code to wxCriticalSection and upload +> it to SVN (it's a little tricky). I don't know what to do for +> TryEnterCriticalSection though. I think I'm almost ready to check +> everything in. + +Would the Boost mutex be of any help here? + +http://www.boost.org/doc/libs/1_40_0/doc/html/thread/synchronization.html#thread.synchronization.mutex_concepts + ++
The easy solution I took was to look at the wxWidgets source code and +see how they did it. They just mapped it to wxMutex on non-MSW, which +does have TryEnter, so that mapped in perfectly. + +I checked in all my backlog of changes to SVN, including the overhaul of +CCriticalSection in util.h and OpenSSL's mutex callback in util.cpp to +do everything with wxWidgets when not on Windows. + +If we get it working on Linux, I'll run my test suite against it here +off-network first, then we can give an unreleased build to +LibertyStandard to test for a while before going public. + +mmalmi@cc.hut.fi wrote: +>> I'll convert the CriticalSection code to wxCriticalSection and upload +>> it to SVN (it's a little tricky). I don't know what to do for +>> TryEnterCriticalSection though. I think I'm almost ready to check +>> everything in. +> +> Would the Boost mutex be of any help here? +> +> http://www.boost.org/doc/libs/1_40_0/doc/html/thread/synchronization.html#thread.synchronization.mutex_concepts +> +> + ++
I fixed some non-portable stuff I came across: +QueryPerformanceCounter +%I64d in printf format strings +Sleep +CheckDiskSpace + +If there's any other unportable stuff you know of I should fix, let me know. + +I think I'll move debug.log and db.log into the same directory as the +data files (%appdata%\Bitcoin), rather than whatever the current +directory happens to be. + ++
I made an #ifdef to replace QueryPerformanceCounter with Linux's +gettimeofday in util.h. Some Unicode/ANSI errors were resolved without +code changes when I updated to wxWidgets 2.9. The only compile error +I'm getting in Linux at the moment is from heapchk() in util.h. + +> I fixed some non-portable stuff I came across: +> QueryPerformanceCounter +> %I64d in printf format strings +> Sleep +> CheckDiskSpace +> +> If there's any other unportable stuff you know of I should fix, let me know. +> +> I think I'll move debug.log and db.log into the same directory as the +> data files (%appdata%\Bitcoin), rather than whatever the current +> directory happens to be. + + + ++
heapchk() is just a MSVCRT debugging thing that's not being used. It +can be a no-op on Linux. OpenSSL automatically uses /dev/urandom to +seed on Linux, so RandAddSeedPerfmon can also be a no-op. + +Don't let it connect to the network before we've tested it thoroughly +off-net. If you have two computers, unplug the internet and use +"bitcoin -connect=<ip>" to connect to each other, one windows and one +linux. -connect will allow you to connect to non-routable addresses +like 192.168.x.x. We don't want to reflect badly on the reliability of +the network if it throws off some malformed crud we hadn't thought to +check for yet, or discovers something else anti-social to do on the network. + +I have time that I can do some testing when you've got something +buildable to test. I can include it in the stress test I'm currently +running on the changes so far. + +mmalmi@cc.hut.fi wrote: +> I made an #ifdef to replace QueryPerformanceCounter with Linux's +> gettimeofday in util.h. Some Unicode/ANSI errors were resolved without +> code changes when I updated to wxWidgets 2.9. The only compile error I'm +> getting in Linux at the moment is from heapchk() in util.h. +> +>> I fixed some non-portable stuff I came across: +>> QueryPerformanceCounter +>> %I64d in printf format strings +>> Sleep +>> CheckDiskSpace +>> +>> If there's any other unportable stuff you know of I should fix, let me +>> know. +>> +>> I think I'll move debug.log and db.log into the same directory as the +>> data files (%appdata%\Bitcoin), rather than whatever the current +>> directory happens to be. +> +> +> + ++
I uploaded what I've ported so far to the svn/branches. Util, script, +db and the headers compile fully now and net.cpp partially, so there's +still work to do. + +_beginthread doesn't have a direct Linux equivalent, so I used Boost +threads instead. + +I couldn't get connected using the Tor SOCKS proxy. That might be +because of the Freenode Tor policy which requires connecting to their +hidden service: http://freenode.net/irc_servers.shtml#tor + +> heapchk() is just a MSVCRT debugging thing that's not being used. It +> can be a no-op on Linux. OpenSSL automatically uses /dev/urandom to +> seed on Linux, so RandAddSeedPerfmon can also be a no-op. +> +> Don't let it connect to the network before we've tested it thoroughly +> off-net. If you have two computers, unplug the internet and use +> "bitcoin -connect=<ip>" to connect to each other, one windows and one +> linux. -connect will allow you to connect to non-routable addresses +> like 192.168.x.x. We don't want to reflect badly on the reliability of +> the network if it throws off some malformed crud we hadn't thought to +> check for yet, or discovers something else anti-social to do on the +> network. +> +> I have time that I can do some testing when you've got something +> buildable to test. I can include it in the stress test I'm currently +> running on the changes so far. +> +> mmalmi@cc.hut.fi wrote: +>> I made an #ifdef to replace QueryPerformanceCounter with Linux's +>> gettimeofday in util.h. Some Unicode/ANSI errors were resolved +>> without code changes when I updated to wxWidgets 2.9. The only +>> compile error I'm getting in Linux at the moment is from heapchk() +>> in util.h. +>> +>>> I fixed some non-portable stuff I came across: +>>> QueryPerformanceCounter +>>> %I64d in printf format strings +>>> Sleep +>>> CheckDiskSpace +>>> +>>> If there's any other unportable stuff you know of I should fix, +>>> let me know. +>>> +>>> I think I'll move debug.log and db.log into the same directory as the +>>> data files (%appdata%\Bitcoin), rather than whatever the current +>>> directory happens to be. +>> +>> +>> + + + ++
Great, I've been looking forward to working on the Linux build. + +If you connect to Freenode's hidden service, then they tell you they've +also banned TOR from that due to abuse and it kicks you off. There's a +several step procedure you can do to run a password utility on unix and +e-mail request an account that you could login with, but that's getting +pretty complicated. I wonder if we could get away with applying for one +account and then everyone use the same account? I suppose the IRC +server probably limits accounts to one login, or some admin might not +like to see a dozen logins on the same account. + +Besides the IRC part, how did your test of proxy go? Since you've been +connected before, your addr.dat contains known node addresses, but +without IRC to know which ones are online, it takes a long time to find +them. There are normally 1 to 3 other nodes besides you that can accept +incoming connections, and existing nodes that already know you would +eventually connect to you. How many connections did you get, and how +long did it take? I guess to know whether it successfully connected +outbound through TOR you'd need to search debug.log for "connected". + +To originally connect with TOR without connecting normally once to get +seeded, you'd have to know the address of an existing node that can +accept incoming connections and seed it like this: +bitcoin -proxy=127.0.0.1:9050 -addnode=<ip of a node> + +If some nodes that accept incoming connects were willing to have their +IP coded into the program, it could seed automatically. Or some IP seed +addresses posted on a Wiki page with the instructions. + +Another option is to search the world again for an IRC server that +doesn't ban TOR nodes. Or if we could get someone to set one up. IRC +servers ban TOR because they have actual text chat on them... if there +was one with just bots and junk then it wouldn't care. Probably should +post a question on the forum or the mailing list and see if anyone knows +one. + +Another problem is that TOR users can't accept incoming connections, and +we have so few that can. If everyone goes to TOR, there won't be any +nodes to connect to. + +We have a shortage of nodes that can accept incoming connections. It +generally ranges from 2 to 4 lately. We need to emphasize the +importance to people of setting up port forwarding on their router. +Every P2P file sharing program has instructions how to do it. We should +have a paragraph on the bitcoin.sourceforge.net homepage urging people +to set up port forwarding to accept incoming connections, and a link to +a site that describes how to do it for each router. + +mmalmi@cc.hut.fi wrote: +> I uploaded what I've ported so far to the svn/branches. Util, script, db +> and the headers compile fully now and net.cpp partially, so there's +> still work to do. +> +> _beginthread doesn't have a direct Linux equivalent, so I used Boost +> threads instead. +> +> I couldn't get connected using the Tor SOCKS proxy. That might be +> because of the Freenode Tor policy which requires connecting to their +> hidden service: http://freenode.net/irc_servers.shtml#tor +> +>> heapchk() is just a MSVCRT debugging thing that's not being used. It +>> can be a no-op on Linux. OpenSSL automatically uses /dev/urandom to +>> seed on Linux, so RandAddSeedPerfmon can also be a no-op. +>> +>> Don't let it connect to the network before we've tested it thoroughly +>> off-net. If you have two computers, unplug the internet and use +>> "bitcoin -connect=<ip>" to connect to each other, one windows and one +>> linux. -connect will allow you to connect to non-routable addresses +>> like 192.168.x.x. We don't want to reflect badly on the reliability of +>> the network if it throws off some malformed crud we hadn't thought to +>> check for yet, or discovers something else anti-social to do on the +>> network. +>> +>> I have time that I can do some testing when you've got something +>> buildable to test. I can include it in the stress test I'm currently +>> running on the changes so far. +>> +>> mmalmi@cc.hut.fi wrote: +>>> I made an #ifdef to replace QueryPerformanceCounter with Linux's +>>> gettimeofday in util.h. Some Unicode/ANSI errors were resolved +>>> without code changes when I updated to wxWidgets 2.9. The only +>>> compile error I'm getting in Linux at the moment is from heapchk() +>>> in util.h. +>>> +>>>> I fixed some non-portable stuff I came across: +>>>> QueryPerformanceCounter +>>>> %I64d in printf format strings +>>>> Sleep +>>>> CheckDiskSpace +>>>> +>>>> If there's any other unportable stuff you know of I should fix, let +>>>> me know. +>>>> +>>>> I think I'll move debug.log and db.log into the same directory as the +>>>> data files (%appdata%\Bitcoin), rather than whatever the current +>>>> directory happens to be. +>>> +>>> +>>> +> +> +> + ++
It was almost there. I fixed a few things and got it to finish +compiling but I don't know the system libraries to link to so there's +undefined references galore. + +I changed the makefile to look for things under /usr/local and in their +default "make install" locations. I wrote what I did and switches I +used in build-unix.txt. I'm currently using wxWidgets 2.8.9 for now +because it's the same version as on Windows and I don't want to wonder +if there's version change issues at the same time as platform change. +2.8.10 or 2.9.0 are probably fine though. I went with the +single-library compile of wxWidgets since we're linking to almost every +library anyway. + +I added xpm files, which is what they use everywhere else but Windows +instead of RC files. They're clever C files that define graphics in +static arrays. The bitcoin icon has 5 different versions but I couldn't +figure out how that works in xpm so I only put the biggest one. Maybe +on GTK it scales it for you. I don't know if these are right or what, +but they compile. + +mmalmi@cc.hut.fi wrote: +> I uploaded what I've ported so far to the svn/branches. Util, script, db +> and the headers compile fully now and net.cpp partially, so there's +> still work to do. +> +> _beginthread doesn't have a direct Linux equivalent, so I used Boost +> threads instead. +> ++
Just letting you know I'm still working on the Linux build so we don't +duplicate work. I got it linked and ran it and working through runtime +issues like getting it switched to load bitmaps from xpm instead of +resources. + +There are debian packages available for some of the dependencies instead +of having to compile them ourselves: +apt-get install build-essential +apt-get install libgtk2.0-dev +apt-get install libssl-dev + +I need to see if Berkeley DB or Boost have packages. + +We'll shared-link OpenSSL, I'm pretty sure it's always preinstalled on +Linux. GTK has to be shared linked. I'm not completely sure if it's +preinstalled by default. + ++
> Besides the IRC part, how did your test of proxy go? Since you've been +> connected before, your addr.dat contains known node addresses, but +> without IRC to know which ones are online, it takes a long time to find +> them. There are normally 1 to 3 other nodes besides you that can +> accept incoming connections, and existing nodes that already know you +> would eventually connect to you. How many connections did you get, and +> how long did it take? I guess to know whether it successfully +> connected outbound through TOR you'd need to search debug.log for +> "connected". + +Enabling the proxy setting and restarting Bitcoin I got the first +connections in less than a minute and ultimately even 8 connections. I +wonder if they're all really through TOR. Netstat shows only 2 +connections to localhost:9050 and 7 connections from local port 8333 +to elsewhere. (Some of the shown connections may be already +disconnected ones.) For some reason there's no debug.log in the folder +where I'm running it. + +> If some nodes that accept incoming connects were willing to have their +> IP coded into the program, it could seed automatically. Or some IP +> seed addresses posted on a Wiki page with the instructions. + +The wiki page sounds like a good and quickly applicable solution. I +could keep my ip updated there and we could ask others to do the same. +When the Linux build works, it's easier to set up nodes on servers +that are online most of the time and have a static IP. A static ip +list shipped with Bitcoin and a peer exchange protocol would be cool. +That way there'd be no need for an IRC server. + +> Just letting you know I'm still working on the Linux build so we don't +> duplicate work. I got it linked and ran it and working through runtime +> issues like getting it switched to load bitmaps from xpm instead of +> resources. + +Ok. I didn't get it linked on the first attempt, but I didn't look +further into the dependencies yet. + ++
I merged the linux changes into the main trunk on SVN. It compiles and +runs now. I think all the problems are in the UI. The menus quickly +quit working and it doesn't repaint when it's supposed to unless I +resize it, and the UI is getting some segfaults. Shouldn't be too hard +to debug with gdb. I haven't tested if it plays nice with other nodes +yet so keep it off-net. + +build-unix.txt and makefile.unix added ++
mmalmi@cc.hut.fi wrote: +> Enabling the proxy setting and restarting Bitcoin I got the first +> connections in less than a minute and ultimately even 8 connections. I +> wonder if they're all really through TOR. Netstat shows only 2 +> connections to localhost:9050 and 7 connections from local port 8333 to +> elsewhere. (Some of the shown connections may be already disconnected +> ones.) For some reason there's no debug.log in the folder where I'm +> running it. + +debug.log moved to the data directory "%appdata%/bitcoin/debug.log" + +7 inbound and 2 outbound sounds about as expected. + +My last SVN commit included an overhaul of the code that selects the +order of addresses to connect to, trying them in the order of most +recently seen online, so it should get connected in a more reasonable +amount of time if IRC is unavailable. IRC is really only needed to seed +the first connection, but we've been using it as a crutch to get +connected faster. + +>> If some nodes that accept incoming connects were willing to have their +>> IP coded into the program, it could seed automatically. Or some IP +>> seed addresses posted on a Wiki page with the instructions. +> +> The wiki page sounds like a good and quickly applicable solution. I +> could keep my ip updated there and we could ask others to do the same. +> When the Linux build works, it's easier to set up nodes on servers that +> are online most of the time and have a static IP. A static ip list +> shipped with Bitcoin and a peer exchange protocol would be cool. That +> way there'd be no need for an IRC server. + +That would be great. It's only TOR users that need it, so in the +instructions saying "bitcoin -proxy=127.0.0.1:9050 -addnode=<someip>", +someip could be an actual static IP, with the wiki free-for-all +add-your-ip list nearby or a link to it. There should be a link to that optional step, add your IP to this list now that you can accept incoming +if you're static. + +Do you think anonymous people are looking to be completely stealth, as +in never connect once without TOR so nobody knows they use bitcoin, or +just want to switch to TOR before doing any transactions? It's just if +you want to be completely stealth that you'd have to go through the +-proxy -addnode manual seeding. It would be very easy to fumble that +up; if you run bitcoin normally to begin with it immediately +automatically starts connecting. ++
Now that the forum on bitcoin.sourceforge.net is catching on, we really +should look for somewhere that freehosts full blown forum software. The +bitweaver forum feature is just too lightweight. I assume the "Forum" +tab on the homepage can link out to wherever the forum is hosted. + +I've seen projects that have major following just from forum talk and +pie-in-the-sky planning without even having any code yet. Having a lot +of forum talk gives a project more presence on the net, more search +hits, makes it look big, draws new users in, helps solve support +questions, hashes out what features are most of wanted. + +It would be a big plus if it could support SSL, at least for the login +page if not sitewide. Multiple people on the forum have expressed +interest in TOR/I2P, and those users need SSL because a lot of TOR exit +nodes are probably password scrapers run by identity thieves. A lot of +the core interest in Bitcoin is going to be from the privacy crowd. + +Any ideas where we can get a free forum? Maybe we should look at where +some other projects have their forums hosted for ideas where to look. + + + ++
It works reliably on Linux now, except if it uses wxMessageBox() outside +the GUI thread, it'll crash because non-GUI threads can't open a window +on Linux. I haven't got to fixing that yet. I've been running my +stress test on it and it's functioning normally. + +Most of wxWidgets is not thread-safe to use in threads other than the UI +thread, but as a rule of thumb on Windows anything not UI related is OK. + It turns out its more thread-unsafe on GTK. I replaced a bunch of +stuff at once so I don't know if it was just one thing (probably +Repaint), but I have to assume even any wx function that uses wxString +is not safe to use outside the UI thread. So dang, there goes all the +nice wxWidgets portability support functions. I left a few simple +things like wxThread::GetCPUCount() that I checked the source and it's +all numerical, and wxMutex has to be safe or it'd be useless. + +There's an issue that if you exit and run it again right away, it can't +bind port 8333. The port frees up after about a minute. Unless I'm +missing something, I am closing the socket before exit, so I don't know +what else I can do. Maybe this is just something about Linux that it +takes a minute to free up a port you had bound. Possibly a security +feature so some trojan doesn't kill the web server and quickly jump into +its place and pick up all the client retries. + +Still gotta figure out how to do the xpm version of the icon correctly. + +I wonder if the database dat files are interchangeable with Windows. ++
> Do you think anonymous people are looking to be completely stealth, as +> in never connect once without TOR so nobody knows they use bitcoin, or +> just want to switch to TOR before doing any transactions? It's just if +> you want to be completely stealth that you'd have to go through the +> -proxy -addnode manual seeding. It would be very easy to fumble that +> up; if you run bitcoin normally to begin with it immediately +> automatically starts connecting. + +The people who are interested in being stealthy tend to be more +technically able, and they probably don't have a problem following the +instructions to get perfect secrecy. Of course there could be a +connect-button in the UI that needs to be clicked before use, but the +tradeoff is that the UI becomes less straightforward for the average +user. + +> It would be a big plus if it could support SSL, at least for the login +> page if not sitewide. Multiple people on the forum have expressed +> interest in TOR/I2P, and those users need SSL because a lot of TOR exit +> nodes are probably password scrapers run by identity thieves. A lot of +> the core interest in Bitcoin is going to be from the privacy crowd. +> +> Any ideas where we can get a free forum? Maybe we should look at where +> some other projects have their forums hosted for ideas where to look. + +One option would be ning.com. Ning.com is a popular community site and +many users who already have an account wouldn't need to register a new +account. Example: http://p2pfoundation.ning.com/. This seems to +support SSL. + +Another option would be to relocate the whole site to some place where +we can run Drupal or TikiWiki. I've been thinking of buying virtual +server or web hosting for the exchange service sometime soon, and if +the platform allows for two separate accounts, we could run the site +there too. The CMS and its database can be always copied and relocated +to a new web host if needed. + ++
bitcoin-linux-0.1.6-test1.tar.bz2 attached ++
The Linux build is ready for testing on the network. It seems solid. I +sent the executable as an attachment in the previous e-mail, but if the +mail server didn't let it through (it's 12MB), you can download it here: +http://rapidshare.com/files/303914158/linux-0.1.6-test1.tar.bz2.html + + ++
That's great! A major waypoint reached. Seems to work fine here. + +> The Linux build is ready for testing on the network. It seems solid. +> I sent the executable as an attachment in the previous e-mail, but if +> the mail server didn't let it through (it's 12MB), you can download it +> here: +> http://rapidshare.com/files/303914158/linux-0.1.6-test1.tar.bz2.html + + + ++
I made a ning.com site for testing: bitcoin.ning.com. At least it's +there to get Google hits, even if we didn't use it. + +> Now that the forum on bitcoin.sourceforge.net is catching on, we really +> should look for somewhere that freehosts full blown forum software. +> The bitweaver forum feature is just too lightweight. I assume the +> "Forum" tab on the homepage can link out to wherever the forum is +> hosted. +> +> I've seen projects that have major following just from forum talk and +> pie-in-the-sky planning without even having any code yet. Having a lot +> of forum talk gives a project more presence on the net, more search +> hits, makes it look big, draws new users in, helps solve support +> questions, hashes out what features are most of wanted. +> +> It would be a big plus if it could support SSL, at least for the login +> page if not sitewide. Multiple people on the forum have expressed +> interest in TOR/I2P, and those users need SSL because a lot of TOR exit +> nodes are probably password scrapers run by identity thieves. A lot of +> the core interest in Bitcoin is going to be from the privacy crowd. +> +> Any ideas where we can get a free forum? Maybe we should look at where +> some other projects have their forums hosted for ideas where to look. + + + ++
In the debug.log, it requests the block list, receives the block list, +then begins uploading the list of blocks requested. It doesn't receive +the blocks, but it didn't run long enough for me to be sure it would +have had time yet. Everything else looks normal. + +How long did you run it? It could take a few minutes to start +downloading the blocks. Especially if you're on a cable modem, the +uplink can be much lower bandwidth so it would take some time to upload +the block request list. + +If you run it again and it still doesn't download blocks, keep it +running for several hours at least and then send me the debug.log. That +should give it time for my node to connect to you and I could see what +it says on my side and correlate it with your debug.log. + +You're right about the minimize on close option, there's no reason that +can't be separate. Martti originally had it separate and I made it a +sub-option, my bad. I'll change it back. + +Liberty Standard wrote: +> That is what I meant. The blocks displayed in the status bar did not +> increase at all while i ran the program. I have attached my debug.log. +> +> A good way for you to test the tray icon in Gnome is to remove the +> notification area and then add it back. If the icon is still displayed +> after adding the notification back, then it's working correctly. +> +> I generally set application preferences to not minimize to the tray, but +> to close to the tray. And I keep the application minimized. That way I +> don't accidentally close the program and still have the convenience of +> being able to open the application from the tray. (I don't display open +> windows in the 'task bar' but I have an icon that if clicked displays +> open windows as sub-menu items.) Then if the tray icon disappears, I go +> into the settings disable and re-enable the tray icon setting to get it +> to reappear. That's currently not possible with the bitcoin preferences +> because the close to tray check mark can not be enabled without the +> minimize to tray check box being enabled. +> +> +> On Sun, Nov 8, 2009 at 9:08 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> Liberty Standard wrote: +> +> I downloaded it and it runs. It and it is using plenty of CPU, +> so I think it's working properly. It has not downloaded +> previously generated blocks. Is that a bug or a new feature? +> +> +> If you mean the blocks count in the status bar isn't working its way +> up to around 26600, then that's a bug, you should send me your +> debug.log. (which is at ~/.bitcoin/debug.log) +> +> +> The system tray in Gnome is not very reliable. Sometimes an icon +> will disappear leaving no way to get back to the program. I have +> verified that this can happen with bitcoin. It would be nice if +> starting bitcoin while it's already running would just bring up +> the GUI of the already running bitcoin process. +> +> +> We haven't figured out how to find and bring up the existing running +> program yet on Linux like it does on Windows. Given what you say, I +> should at least turn off the minimize to tray option initially by +> default. +> +> + ++
I'm not really a fan of that type of forum layout. The thread list only +fits about 4 threads on a page, posts are treated like news articles or +blog posts with reply comments at the bottom. It's more of a social +networking site, not really conducive to technical discussion. + +I'm thinking phpBB or IPB or similar. One line of text per thread, +small fonts, efficient use of vertical space. Most people are already +familiar with the interface. + +mmalmi@cc.hut.fi wrote: +> I made a ning.com site for testing: bitcoin.ning.com. At least it's +> there to get Google hits, even if we didn't use it. +> +>> Now that the forum on bitcoin.sourceforge.net is catching on, we really +>> should look for somewhere that freehosts full blown forum software. +>> The bitweaver forum feature is just too lightweight. I assume the +>> "Forum" tab on the homepage can link out to wherever the forum is +>> hosted. +>> +>> I've seen projects that have major following just from forum talk and +>> pie-in-the-sky planning without even having any code yet. Having a lot +>> of forum talk gives a project more presence on the net, more search +>> hits, makes it look big, draws new users in, helps solve support +>> questions, hashes out what features are most of wanted. +>> +>> It would be a big plus if it could support SSL, at least for the login +>> page if not sitewide. Multiple people on the forum have expressed +>> interest in TOR/I2P, and those users need SSL because a lot of TOR exit +>> nodes are probably password scrapers run by identity thieves. A lot of +>> the core interest in Bitcoin is going to be from the privacy crowd. +>> +>> Any ideas where we can get a free forum? Maybe we should look at where +>> some other projects have their forums hosted for ideas where to look. +> +> +> + ++
Liberty Standard wrote: +> Ok, blocks have now started to increase. It definitely takes longer for +> them to start increasing than with the Windows version. Also, I think +> they might be increasing at a slower rate than in with the Windows +> version. Is there perhaps debugging enabled in the Linux build that you +> sent me? Block are increasing at about 15 blocks per second (eyeball +> estimate while looking at a clock). I didn't time how fast they +> increased in the Windows version, but it seems like it was much faster. + +About how long did it take to start? It could be the node that you +happened to request from is slow. The slow start is consistent with the +slow download speed. + +I'd like to look at your current debug.log file and try to understand +what's going. It might just be a really slow connection on the other +side, or maybe something's wrong and failed and retried. Taking too +long could confuse other users. + +Martti, how long did it take to start downloading blocks when you ran +it, and how fast did it download? + +> When I launch bitcoin and the bitcoin port is not available, I get +> the following messages to the command line. I don't get those +> messages when the bitcoin port is available. Would it be possible +> for bitcoin to pick another port if the default port is taken? The +> same think sometimes happens to me with my BitTorrent client. When I +> restart it, my previously open port is closed. All I have to do is +> change the port and it starts working again. +> +> /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64 +> Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so +> /usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF +> class: ELFCLASS64 +> Failed to load module: +> /usr/lib/gio/modules/libgioremote-volume-monitor.so +> /usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64 +> Failed to load module: /usr/lib/gio/modules/libgiogconf.so + +It already uses SO_REUSEADDR so it can bind to the port if it's in +TIME_WAIT state after being closed. The only time it should fail to +bind is when the program really is already running. It's important that +two copies of Bitcoin not run on the same machine at once because they +would be modifying the database at the same time. There is never any +need to run two on one machine as coin generation will now use multiple +processors automatically. + +I'm not sure what those lib errors are, I'll do some searching. ++
Thanks for that, I see what happened. Because the first one was slow, +it ended up requesting the blocks from everybody else, which only bogged +everything down. I can fix this, I just need to think a while about the +right way. + +There's no risk in shutting down while there are unconfirmed. When you +make a transaction or new block, it immediately broadcasts it to the +network. After that, the increasing #/confirmed number is just +monitoring the outcome. There's nothing your node does during that time +to promote the acceptance. + +Now that I think about it, when you close Bitcoin, it closes the main +window immediately but in the background continues running to finish an +orderly flush and shutdown of the database. Before I implemented that, +it was annoying having a dead hung unresponsive window hanging around. +Until it finishes the orderly shutdown in the background, the port would +be locked, and this is an important protection to make sure another copy +can't touch the database until it's done. I haven't seen the shutdown +take more than a few seconds. + +In Wine, there's no way for the Windows version to do SO_REUSEADDR, so +that would add 60 seconds (on my system) of TIME_WAIT after the port is +closed. + +If you need to transfer between two copies, you could send it to the +other's bitcoin address. The receiving copy doesn't have to be online +at the time. + +The command line to use a different data directory is +bitcoin -datadir=<directory> + +For example, on Linux, the default directory is (don't use ~) +bitcoin -datadir=/home/yourusername/.bitcoin + +You shouldn't normally have any need to use this switch. It still won't +let you run two instances at once. + +Liberty Standard wrote: +> On Mon, Nov 9, 2009 at 3:23 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> Liberty Standard wrote: +> +> Ok, blocks have now started to increase. It definitely takes +> longer for them to start increasing than with the Windows +> version. Also, I think they might be increasing at a slower rate +> than in with the Windows version. Is there perhaps debugging +> enabled in the Linux build that you sent me? Block are +> increasing at about 15 blocks per second (eyeball estimate while +> looking at a clock). I didn't time how fast they increased in +> the Windows version, but it seems like it was much faster. +> +> +> About how long did it take to start? It could be the node that you +> happened to request from is slow. The slow start is consistent with +> the slow download speed. +> +> +> It took about a half hour for it to start incrementing quickly. +> Interestingly, the CPU usage increased before it started to increment +> steadily and then lowered when it started to increment steadily. +> Although this time the block incremented to 2 within the first few +> minutes. I have not yet generated any bitcoins. I'll wait for as long as +> I have patience to generate a bitcoin, but if none are created by the +> time I lose patience, I'm going to move back to the wine version. +> +> I'd like to look at your current debug.log file and try to +> understand what's going. It might just be a really slow connection +> on the other side, or maybe something's wrong and failed and +> retried. Taking too long could confuse other users. +> +> +> I've included my current debug.log. +> +> +> Martti, how long did it take to start downloading blocks when you +> ran it, and how fast did it download? +> +> +> When I launch bitcoin and the bitcoin port is not available, +> I get +> the following messages to the command line. I don't get those +> messages when the bitcoin port is available. Would it be possible +> for bitcoin to pick another port if the default port is +> taken? The +> same think sometimes happens to me with my BitTorrent client. +> When I +> restart it, my previously open port is closed. All I have to +> do is +> change the port and it starts working again. +> +> /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64 +> Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so +> /usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF +> class: ELFCLASS64 +> Failed to load module: +> /usr/lib/gio/modules/libgioremote-volume-monitor.so +> /usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64 +> Failed to load module: /usr/lib/gio/modules/libgiogconf.so +> +> +> It already uses SO_REUSEADDR so it can bind to the port if it's in +> TIME_WAIT state after being closed. The only time it should fail to +> bind is when the program really is already running. It's important +> that two copies of Bitcoin not run on the same machine at once +> because they would be modifying the database at the same time. +> There is never any need to run two on one machine as coin +> generation will now use multiple processors automatically. +> +> +> The reason I run two instances at the same time is to transfer bitcoins +> from one bitcoin instance to another. They of course would need to be +> accessing different data directories. Perhaps that could be specified as +> a command line argument. I currently have to move my bitcoin data folder +> to a virtual machine to do this. Shutting down bitcoin and restarting it +> with a different data directory is a poor solution because shutting down +> bitcoin while there are unconfirmed bitcoins risks losing those bitcoins. +> +> Bitcoin was definitely not running when i get the busy port error. The +> process closes quickly and reliably from my experience, but it takes +> anywhere from 30 seconds to 3 minutes (estimation from memory) for the +> port to become available again. It occurred while switching from bitcoin +> 0.1.5 in Wine to the Linux build and again while switching from the +> Linux build to bitcoin 0.1.5 in Wine. +> +> Another thing that I noticed is that the about dialog text does not fit +> correctly and it cannot be resized. +> +> I'm not sure what those lib errors are, I'll do some searching. +> +> + ++
> Martti, how long did it take to start downloading blocks when you ran +> it, and how fast did it download? + +Started very quickly when I got connected and downloaded quicker than +my Windows PC, which has a slower CPU. + +I'll have to focus on a school project (coincidentally C++ coding) for +about a month now, so I don't have that much time for active +developing until December. Let's keep contact anyway. + +> Liberty Standard wrote: +>> Ok, blocks have now started to increase. It definitely takes longer +>> for them to start increasing than with the Windows version. Also, +>> I think they might be increasing at a slower rate than in with the +>> Windows version. Is there perhaps debugging enabled in the Linux +>> build that you sent me? Block are increasing at about 15 blocks per +>> second (eyeball estimate while looking at a clock). I didn't time +>> how fast they increased in the Windows version, but it seems like +>> it was much faster. +> +> About how long did it take to start? It could be the node that you +> happened to request from is slow. The slow start is consistent with +> the slow download speed. +> +> I'd like to look at your current debug.log file and try to understand +> what's going. It might just be a really slow connection on the other +> side, or maybe something's wrong and failed and retried. Taking too +> long could confuse other users. +> +> Martti, how long did it take to start downloading blocks when you ran +> it, and how fast did it download? +> +>> When I launch bitcoin and the bitcoin port is not available, I get +>> the following messages to the command line. I don't get those +>> messages when the bitcoin port is available. Would it be possible +>> for bitcoin to pick another port if the default port is taken? The +>> same think sometimes happens to me with my BitTorrent client. When I +>> restart it, my previously open port is closed. All I have to do is +>> change the port and it starts working again. +>> +>> /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64 +>> Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so +>> /usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF +>> class: ELFCLASS64 +>> Failed to load module: +>> /usr/lib/gio/modules/libgioremote-volume-monitor.so +>> /usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64 +>> Failed to load module: /usr/lib/gio/modules/libgiogconf.so +> +> It already uses SO_REUSEADDR so it can bind to the port if it's in +> TIME_WAIT state after being closed. The only time it should fail to +> bind is when the program really is already running. It's important +> that two copies of Bitcoin not run on the same machine at once because +> they would be modifying the database at the same time. There is never +> any need to run two on one machine as coin generation will now use +> multiple processors automatically. +> +> I'm not sure what those lib errors are, I'll do some searching. + + + ++
You really don't want to keep running in Wine, you're getting database +errors (db.log). You probably developed these rituals of transferring +to a fresh install to cope with database corruption. If there is a way +to lose unconfirmed blocks, it would have to be the database errors. +Any problems you find in the Linux build can be fixed. The Wine +incompatibility deep inside Berkeley DB is unfixable. + +I think GCC 4.3.3 on the Linux build optimized the SHA-256 code better +than the old GCC 3.4.5 on Windows. When I was looking for the best +SHA-256 code, there was a lot of hand tuned highly optimized SHA1 code +available, but not so much for SHA-256 yet. I should see if I can +upgrade MinGW to 4.3.x to get them on a level playing field. + +Liberty Standard wrote: +> Everyone that contributed to making this Linux build really did a great +> job! Thanks for the hard work. It has started maturing some bitcoins, so +> I'm going to continue to run the Linux client for the time being until I +> decide whether it's at least as good or better at generating coins than +> the Windows version running in Wine. +> +> +> On Mon, Nov 9, 2009 at 8:59 AM, Liberty Standard +> <newlibertystandard@gmail.com <mailto:newlibertystandard@gmail.com>> wrote: +> +> Another instance when I would like to run multiple instances is when +> I upgrade bitcoin. I will uncheck the generate coin check box in the +> outdated bitcoin, launch and start generating coins in the new +> bitcoin using a separate data directory, then when the old +> application's coins have matured I will send them to the new +> application and then close the old application. I prefer do do clean +> installs rather than upgrading while maintaining old data. +> +> +> +> On Mon, Nov 9, 2009 at 7:42 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> Thanks for that, I see what happened. Because the first one was +> slow, it ended up requesting the blocks from everybody else, +> which only bogged everything down. I can fix this, I just need +> to think a while about the right way. +> +> There's no risk in shutting down while there are unconfirmed. +> When you make a transaction or new block, it immediately +> broadcasts it to the network. After that, the increasing +> #/confirmed number is just monitoring the outcome. There's +> nothing your node does during that time to promote the acceptance. +> ++
You got a lot done with the Linux build, autostart, minimize to tray, +setup and everything, it's really appreciated. Good luck on your C++ +project. + +mmalmi@cc.hut.fi wrote: +> I'll have to focus on a school project (coincidentally C++ coding) for +> about a month now, so I don't have that much time for active developing +> until December. Let's keep contact anyway. +> ++
I see what happened. All your sockets went dead somehow. You had no +communication with the network, but because you had 8 zombie +connections, it thought it was still online and kept generating blocks. + You can tell this is happening when your blocks are numbered +sequentially, without other people's blocks interspersed, like: +2/unconfirmed +3/unconfirmed +4/unconfirmed +5/unconfirmed +6 blocks +7 blocks + +It's implausible that you would be the only one to find blocks for 6 +blocks in a row like that. + +When you exited and restarted, it connected and downloaded 45 blocks +that the network found in your absence. Since your blocks were not +broadcast to the network immediately, the network went on without them. + +It sounds like you had exactly the same problem on Wine. There's +clearly something about socket handling on Linux that's effecting it +either way. + +I'll start researching this. Ultimately if I can't find the root of the +problem, I'll have to make some kind of mechanism to watch for an +absence of messages and disconnect. The only workaround for you right +now would be to exit and restart more often. + +All but one of your node connections went dead at the same time, one +shortly after. IRC was still working, so it wasn't that you were +offline from the internet. + +I wonder if the status of blocks should say "#/unconfirmed" all the way +up to maturity (119/unconfirmed then 120 blocks) instead. The meaning +of the number isn't as strong for blocks as for transactions. + +I think it would be an improvement not to count one's own blocks as +confirmations. A drawback would be that the status numbers shown by +different nodes would not match. The status number would no longer be +coordinated with the maturity countdown on blocks either. A lighter +option would be a special case only if all confirmations are your own. + +Liberty Standard wrote: +> I just lost 6 sets of maturing coins! I had 10 sets of bitcoins +> maturing. The last set was generated at about 0:22. It got to +> 2/unconfirmed before bitcoin got stuck. At 10:10, the bitcoin which was +> generated at 0:22 was still only at 2/unconfirmed. Since you had told me +> that I wasn't going to lose coins, I shutdown and restarted bitcoin. On +> the bright side, it shutdown and started up very smoothly. But +> unfortunately, when the blocks updated, I lost 6 sets of bitcoins. Four +> sets were still unconfirmed, but two sets were confirmed. And there's no +> trace of them now. Perhaps now that you have the 'Show Generated Coins' +> option available, you can put back in failed bitcoin generations. I just +> don't like that those bitcoins just disappeared into thin air. I'm still +> running the Linux build at the moment, but the Wine version is suddenly +> looking much more attractive now that 6 out of the 10 sets of bitcoins I +> generated in the past 24 hours just vanished. I've included my debug.log. +> +> +> On Tue, Nov 10, 2009 at 1:45 AM, Liberty Standard +> <newlibertystandard@gmail.com <mailto:newlibertystandard@gmail.com>> wrote: +> +> The Linux build has generated a decent amount of bitcoins within the +> past 20 hours and I trust what you're telling me about database +> errors, so all signs point toward me running the Linux build from +> now on. The only half annoying thing about the Linux build is that +> my computer's fan has gone from 50% to 100%. :-P I know I can limit +> the CPU, so if it gets on my nerves too much and if I can live with +> less bitcoins being generated, perhaps I'll do that. Or maybe I just +> need to start listening to more music... +> +... +> +> There's no risk in shutting down while there are +> unconfirmed. +> When you make a transaction or new block, it immediately +> broadcasts it to the network. After that, the increasing +> #/confirmed number is just monitoring the outcome. +> There's +> nothing your node does during that time to promote +> the acceptance. +> +> +> + ++
I fixed a few places I found where it was possible for a socket to get +an error and not get disconnected. If your connections go dead again, +it should disconnect and reconnect them. I also implemented an +inactivity timeout as a fallback. + +This also includes a partial fix for the slow initial block download. + +You should run with the "-debug" switch to get some additional debug.log +information I added that'll help if there are more problems. + +linux-0.1.6-test2.tar.bz2 12,134,012 bytes +Download: +http://rapidshare.com/files/305231818/linux-0.1.6-test2.tar.bz2.html + + +Satoshi Nakamoto wrote: +> I see what happened. All your sockets went dead somehow. You had no +> communication with the network, but because you had 8 zombie +> connections, it thought it was still online and kept generating blocks. +> You can tell this is happening when your blocks are numbered +> sequentially, without other people's blocks interspersed, like: +> 2/unconfirmed +> 3/unconfirmed +> 4/unconfirmed +> 5/unconfirmed +> 6 blocks +> 7 blocks +> +> It's implausible that you would be the only one to find blocks for 6 +> blocks in a row like that. +> +> When you exited and restarted, it connected and downloaded 45 blocks +> that the network found in your absence. Since your blocks were not +> broadcast to the network immediately, the network went on without them. +> +> It sounds like you had exactly the same problem on Wine. There's +> clearly something about socket handling on Linux that's effecting it +> either way. +> +> I'll start researching this. Ultimately if I can't find the root of the +> problem, I'll have to make some kind of mechanism to watch for an +> absence of messages and disconnect. The only workaround for you right +> now would be to exit and restart more often. +> +> All but one of your node connections went dead at the same time, one +> shortly after. IRC was still working, so it wasn't that you were +> offline from the internet. +> +> I wonder if the status of blocks should say "#/unconfirmed" all the way +> up to maturity (119/unconfirmed then 120 blocks) instead. The meaning +> of the number isn't as strong for blocks as for transactions. +> +> I think it would be an improvement not to count one's own blocks as +> confirmations. A drawback would be that the status numbers shown by +> different nodes would not match. The status number would no longer be +> coordinated with the maturity countdown on blocks either. A lighter +> option would be a special case only if all confirmations are your own. +> +> Liberty Standard wrote: +>> I just lost 6 sets of maturing coins! I had 10 sets of bitcoins +>> maturing. The last set was generated at about 0:22. It got to +>> 2/unconfirmed before bitcoin got stuck. At 10:10, the bitcoin which +>> was generated at 0:22 was still only at 2/unconfirmed. Since you had +>> told me that I wasn't going to lose coins, I shutdown and restarted +>> bitcoin. On the bright side, it shutdown and started up very smoothly. +>> But unfortunately, when the blocks updated, I lost 6 sets of bitcoins. +>> Four sets were still unconfirmed, but two sets were confirmed. And +>> there's no trace of them now. Perhaps now that you have the 'Show +>> Generated Coins' option available, you can put back in failed bitcoin +>> generations. I just don't like that those bitcoins just disappeared +>> into thin air. I'm still running the Linux build at the moment, but +>> the Wine version is suddenly looking much more attractive now that 6 +>> out of the 10 sets of bitcoins I generated in the past 24 hours just +>> vanished. I've included my debug.log. +>> +>> +>> On Tue, Nov 10, 2009 at 1:45 AM, Liberty Standard +>> <newlibertystandard@gmail.com <mailto:newlibertystandard@gmail.com>> +>> wrote: +>> +>> The Linux build has generated a decent amount of bitcoins within the +>> past 20 hours and I trust what you're telling me about database +>> errors, so all signs point toward me running the Linux build from +>> now on. The only half annoying thing about the Linux build is that +>> my computer's fan has gone from 50% to 100%. :-P I know I can limit +>> the CPU, so if it gets on my nerves too much and if I can live with +>> less bitcoins being generated, perhaps I'll do that. Or maybe I just +>> need to start listening to more music... +>> +> ... +>> +>> There's no risk in shutting down while there are +>> unconfirmed. +>> When you make a transaction or new block, it +>> immediately +>> broadcasts it to the network. After that, the +>> increasing +>> #/confirmed number is just monitoring the outcome. +>> There's +>> nothing your node does during that time to promote +>> the acceptance. +>> +>> +>> +> +> + ++
linux-0.1.6-test2.tar.bz2 attached ++
Right now (04:50 GMT) my node is connecting to yours and getting zombie +connections each time. The socket isn't returning an error, just zombie +without notice. If you're running the linux build right now, it would +be interesting to see what the log says on your side. + +test3: + +I've added specific code to detect zombie sockets. It'll detect if the +socket hasn't sent or received any data within 60 seconds of connecting, +and detect if data is queued to send and hasn't sent for 3 minutes. + +I think I may have weakened the reconnect speed in test2. In test3 I'm +making it more determined to reconnect quickly. + +I added checking to track whether other nodes received your generated +blocks. If none did, it'll warn you in the description: +"Generated - Warning: This block was not received by any other nodes and +will probably not be accepted!" + +The status can go to "#/offline?" for blocks or transactions you create +if they don't get out to any other nodes. + +With all this, it should be impossible not to notice as soon as it +screws up. It should hopefully disconnect all the zombie sockets. +After that, whether it's able to make some good connections, or sockets +is completely hosed and it stays at 0 connections, I don't know. + +If this doesn't work, I guess I'll look at the sourcecode of some other +P2P apps like BitTorrent and see how they deal with this stuff. Maybe +there's some magic flag or procedure to bash the sockets system back to +life. + +File linux-0.1.6-test3.tar.bz2 attached in the next message. + + +Liberty Standard wrote: +> On Wed, Nov 11, 2009 at 8:08 AM, Liberty Standard +> <newlibertystandard@gmail.com <mailto:newlibertystandard@gmail.com>> wrote: +> +> My network connection is direct to my computer. My ISP requires that +> I run VPN to connect to the Internet. I then have a second NIC that +> shares my Internet with other devices. My IP address while using my +> computer is my actual IP address, but the devices connected through +> my second NIC use NAT. When I connect through a virtual machine, +> that also uses NAT. All this requires very little configuration. +> NetworkManager in Ubuntu has an option to share my Internet +> connection through the second NIC and VirtualBox has the option to +> use NAT. +> +> I lost a couple packs of bitcoins again, so that problem is not yet +> fixed. It's a bit more bearable now that I have an idea of what is +> going on. I figure for now I'll just restart bitcoin whenever I see +> a pack of bitcoins starting to mature. I may go back and forth a bit +> between Linux and Wine, but I'll definitely test every new version +> that comes out. At the moment I'm still running the Linux build. +> +> +> +> On Wed, Nov 11, 2009 at 7:49 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> Thanks. The log didn't stop on anything special, just simple +> message passing. Chances are it's UI related. Most of the +> initial bugs were all UI. +> +> What brand/model of firewall do you have? It's possible for +> BitTorrent to overwhelm the number of connections some models +> can handle. Most are underpowered and flaky under load. +> +> NewLibertyStandard wrote: +> +> I have been getting your attachments just fine. I just +> thought I'd spare Martti the large attachment. +> +> I am not able to reproduce the bug. I don't know whether the +> paste, the blocks finishing, a combination of the two or +> something else entirely caused the fault. +> +> ... +> +> But after they started +> downloading, I took a look a look at my BitTorrent +> client, and +> sure enough, I had forgotten about a torrent and my +> upload was +> quite high, at the limit I had set for it. +> +> +> +> +> + ++
File linux-0.1.6-test3.tar.bz2 attached + +linux-0.1.6-test3.tar.bz2 12,143,473 bytes ++
test 5: + +I added MSG_DONTWAIT to the send and recv calls in case they forgot the +socket is non-blocking. If that doesn't work, there's now the catch-all +solution: another thread monitors the send/recv thread and terminates +and restarts it if it stops. It prints "*** Restarting +ThreadSocketHandler ***" in debug.log, and an error message displays on +the status bar for a while. + +Before terminating, it tries closing the socket that's hung. If that +works, it doesn't have to resort to terminating. + +I ran a test where it terminated the thread about 1000 times without +trouble, so it should be safe. The terminate on linux is +pthread_cancel, which throws it into C++'s exception handler. + +The thread calls we were using didn't have terminate, so I created our +own wrappers in util.h to use CreateThread on windows and pthread_create +on linux, instead of: + _beginthread is windows only and lacks terminate + boost::thread is really attractive, but lacks terminate + wxThread requires you to create a class for every function you might +call (yuck) + +File attached in the next e-mail + + + ++
12,033,918 linux-0.1.6-test5.tar.bz2 ++
I created a forum on Zetaboards, InvisionFree's new site that they're +migrating to. + +http://s1.zetaboards.com/Bitcoin/index/ + +I made an admin account you can use to upgrade your own account to admin: +u: admin +pw: B98VzUUA + +BTW, the admin pages have a huge blank space at the top, you have to +scroll down. + +It doesn't support SSL, but none of them do. I replaced the ugly +default orange and blue theme with the Frostee theme, which was the only +decent looking theme I could find after extensive searching. Searching +for themes is futile, there are thousands of rubbish themes. It turns +out the solution is to look at button sets instead +(http://resources.zetaboards.com/forum/1000328/) + +I only created two subforums to begin with. I'll create new ones as the +need arises. I like to start with a flat namespace until there's enough +items to justify subsections. Technical Support makes sense as a +separate section to get that stuff out of the main spotlight so our +dirty laundry isn't in everyone's face, and to make people feel more +free to report bugs there. Mostly only devs and people checking on a +bug need read the Technical Support section. + ++
linux-0.1.6-test5 solved Liberty's zombie socket problem. The +MSG_DONTWAIT fixed the root cause, it's not having to terminate and +restart the thread. The sockets are marked non-blocking already, so I +don't understand why. Maybe it forgot. I suppose if a socket fails and +the OS closes it then there's nothing left to remember it was +non-blocking, but then accessing a closed handle should return +immediately with an error. There's no MSG_DONTWAIT on Windows, marking +the socket as nonblocking is the only way, so if anyone runs the Windows +version in Wine it will have to rely on terminating the thread. + +The only problem now is the DB exceptions he's getting. +************************ +EXCEPTION: 11DbException +Db::open: Bad file descriptor +bitcoin in ThreadMessageHandler() +************************ +EXCEPTION: 11DbException +Db::close: Bad file descriptor +bitcoin in ThreadMessageHandler() + +I had expected those to be a Wine problem, but he's getting them on +Linux just the same. He tried moving the datadir to a different drive, +no help. I've never gotten them. I'm running a stress test that +continuously generates a lot of activity and DB access and never got it. + +He has Ubuntu 64-bit and I have 32-bit, so I'm assuming that's the +difference. Is your Linux machine 64-bit or 32-bit? Have you ever had +a DB exception? (see db.log also) Now that the zombie problem is fixed +in test5, could you start running it on your Linux machine? We could +use a 3rd vote to get a better idea of what we're dealing with here. +The DB exception is uncaught, so it'll stop the program if you get it. + +BTW, zetaboards insists on displaying "Member #", so you better sign up +soon and grab a good account number. ++
The program terminated a few times with the same error in debug.log +close: Bad file descriptor +blkindex.dat: Bad file descriptor + +I'm running a 64-bit Ubuntu distribution. + +> The only problem now is the DB exceptions he's getting. +> ************************ +> EXCEPTION: 11DbException +> Db::open: Bad file descriptor +> bitcoin in ThreadMessageHandler() +> ************************ +> EXCEPTION: 11DbException +> Db::close: Bad file descriptor +> bitcoin in ThreadMessageHandler() +> +> I had expected those to be a Wine problem, but he's getting them on +> Linux just the same. He tried moving the datadir to a different drive, +> no help. I've never gotten them. I'm running a stress test that +> continuously generates a lot of activity and DB access and never got it. +> +> He has Ubuntu 64-bit and I have 32-bit, so I'm assuming that's the +> difference. Is your Linux machine 64-bit or 32-bit? Have you ever had +> a DB exception? (see db.log also) Now that the zombie problem is fixed +> in test5, could you start running it on your Linux machine? We could +> use a 3rd vote to get a better idea of what we're dealing with here. +> The DB exception is uncaught, so it'll stop the program if you get it. +> +> BTW, zetaboards insists on displaying "Member #", so you better sign up +> soon and grab a good account number. + ++
I'd better install 64-bit then. I imagine it's something about the +32-bit version of Berkeley DB on 64-bit Linux. + +BTW, in things like the feature list credits, do you want me to refer to +you as sirius-m or Martti Malmi? I think most projects go by real names +for consistency. + +mmalmi@cc.hut.fi wrote: +> The program terminated a few times with the same error in debug.log from +> Db::close. Db.log has: +> +> close: Bad file descriptor +> blkindex.dat: Bad file descriptor +> +> I'm running a 64-bit Ubuntu distribution. +> +>> The only problem now is the DB exceptions he's getting. +>> ************************ +>> EXCEPTION: 11DbException +>> Db::open: Bad file descriptor +>> bitcoin in ThreadMessageHandler() +>> ************************ +>> EXCEPTION: 11DbException +>> Db::close: Bad file descriptor +>> bitcoin in ThreadMessageHandler() +>> +>> I had expected those to be a Wine problem, but he's getting them on +>> Linux just the same. He tried moving the datadir to a different drive, +>> no help. I've never gotten them. I'm running a stress test that +>> continuously generates a lot of activity and DB access and never got it. +>> +>> He has Ubuntu 64-bit and I have 32-bit, so I'm assuming that's the +>> difference. Is your Linux machine 64-bit or 32-bit? Have you ever had +>> a DB exception? (see db.log also) Now that the zombie problem is fixed +>> in test5, could you start running it on your Linux machine? We could +>> use a 3rd vote to get a better idea of what we're dealing with here. +>> The DB exception is uncaught, so it'll stop the program if you get it. +>> +>> BTW, zetaboards insists on displaying "Member #", so you better sign up +>> soon and grab a good account number. +> + ++
Perhaps the real name is better. + +Another name question: I've been thinking of a name for the exchange +service, and I came up with Bitcoin X (bitcoinx.com) and Bitcoin Shop +(bitcoinshop.com). Which one do you find better? + +> I'd better install 64-bit then. I imagine it's something about the +> 32-bit version of Berkeley DB on 64-bit Linux. +> +> BTW, in things like the feature list credits, do you want me to refer +> to you as sirius-m or Martti Malmi? I think most projects go by real +> names for consistency. +> +> mmalmi@cc.hut.fi wrote: +>> The program terminated a few times with the same error in debug.log +>> from Db::close. Db.log has: +>> +>> close: Bad file descriptor +>> blkindex.dat: Bad file descriptor +>> +>> I'm running a 64-bit Ubuntu distribution. +>> +>>> The only problem now is the DB exceptions he's getting. +>>> ************************ +>>> EXCEPTION: 11DbException +>>> Db::open: Bad file descriptor +>>> bitcoin in ThreadMessageHandler() +>>> ************************ +>>> EXCEPTION: 11DbException +>>> Db::close: Bad file descriptor +>>> bitcoin in ThreadMessageHandler() +>>> +>>> I had expected those to be a Wine problem, but he's getting them on +>>> Linux just the same. He tried moving the datadir to a different drive, +>>> no help. I've never gotten them. I'm running a stress test that +>>> continuously generates a lot of activity and DB access and never got it. +>>> +>>> He has Ubuntu 64-bit and I have 32-bit, so I'm assuming that's the +>>> difference. Is your Linux machine 64-bit or 32-bit? Have you ever had +>>> a DB exception? (see db.log also) Now that the zombie problem is fixed +>>> in test5, could you start running it on your Linux machine? We could +>>> use a 3rd vote to get a better idea of what we're dealing with here. +>>> The DB exception is uncaught, so it'll stop the program if you get it. +>>> +>>> BTW, zetaboards insists on displaying "Member #", so you better sign up +>>> soon and grab a good account number. +>> + + + ++
At first glance, bitcoinshop.com looks better. bitcoinexchange.com +might be better than bitcoinx.com. + +Be careful where you search domain names, many will front-run you. Even +network solutions, although they've said they won't if you use their +whois page not the homepage. The only safe place is +http://www.internic.com/whois.html + +mmalmi@cc.hut.fi wrote: +> Perhaps the real name is better. +> +> Another name question: I've been thinking of a name for the exchange +> service, and I came up with Bitcoin X (bitcoinx.com) and Bitcoin Shop +> (bitcoinshop.com). Which one do you find better? +> +>> I'd better install 64-bit then. I imagine it's something about the +>> 32-bit version of Berkeley DB on 64-bit Linux. +>> +>> BTW, in things like the feature list credits, do you want me to refer +>> to you as sirius-m or Martti Malmi? I think most projects go by real +>> names for consistency. +>> +>> mmalmi@cc.hut.fi wrote: +>>> The program terminated a few times with the same error in debug.log +>>> from Db::close. Db.log has: +>>> +>>> close: Bad file descriptor +>>> blkindex.dat: Bad file descriptor +>>> +>>> I'm running a 64-bit Ubuntu distribution. +>>> +>>>> The only problem now is the DB exceptions he's getting. +>>>> ************************ +>>>> EXCEPTION: 11DbException +>>>> Db::open: Bad file descriptor +>>>> bitcoin in ThreadMessageHandler() +>>>> ************************ +>>>> EXCEPTION: 11DbException +>>>> Db::close: Bad file descriptor +>>>> bitcoin in ThreadMessageHandler() +>>>> +>>>> I had expected those to be a Wine problem, but he's getting them on +>>>> Linux just the same. He tried moving the datadir to a different drive, +>>>> no help. I've never gotten them. I'm running a stress test that +>>>> continuously generates a lot of activity and DB access and never got +>>>> it. +>>>> +>>>> He has Ubuntu 64-bit and I have 32-bit, so I'm assuming that's the +>>>> difference. Is your Linux machine 64-bit or 32-bit? Have you ever had +>>>> a DB exception? (see db.log also) Now that the zombie problem is fixed +>>>> in test5, could you start running it on your Linux machine? We could +>>>> use a 3rd vote to get a better idea of what we're dealing with here. +>>>> The DB exception is uncaught, so it'll stop the program if you get it. +>>>> +>>>> BTW, zetaboards insists on displaying "Member #", so you better sign up +>>>> soon and grab a good account number. +>>> +> +> +> + ++
I have an idea for a workaround, but it depends on what files the errors +are on. If you've accumulated several errors in db.log, could you send +it to me? (even if it's rather simple and boring) Is the file listed +always blkindex.dat, or does it include addr.dat or wallet.dat too? + +Liberty Standard wrote: +> I moved the data directory back to my SSD card and started bitcoin test +> 6. It encountered a segmentation fault today with Db::open in the log. I +> had changed the settings to only use one processor/core while I watched +> a 720p mkv movie. I noticed the segmentation fault after the film had ended. +> +> On Sun, Nov 15, 2009 at 12:45 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> Here's one where I linked Berkeley DB a different way. It's worth a +> try. Otherwise identical to test5. +> +> (Keep the datadir on the hard drive at least until you get it to +> fail the same way there. That has a fair chance of success.) +> +> + ++
I installed a TikiWiki on my VPS at 174.143.149.98. SSL is currently +enabled with a self-signed certificate. Admin password is the same as +in the Bitweaver. How about using this as the site platform? Maybe we +can make bitcoin.org or at least bitcoin.sf.net point there? + ++
mmalmi@cc.hut.fi wrote: +> I installed a TikiWiki on my VPS at 174.143.149.98. SSL is currently +> enabled with a self-signed certificate. Admin password is the same as in +> the Bitweaver. How about using this as the site platform? Maybe we can +> make bitcoin.org or at least bitcoin.sf.net point there? + +What do you see as the benefits of switching the wiki? +Some I can think of: + SSL + get away from sourceforge's unreliable hosting + everything not logged by sourceforge + +The forum feature is about as weak as bitweaver. We need a full blown +forum software for that. + +My priority right now is to get a forum going, either phpBB or similar. + What do you think of the zetaboards option? Should we go ahead with that? + ++
> What do you see as the benefits of switching the wiki? +> Some I can think of: +> SSL +> get away from sourceforge's unreliable hosting +> everything not logged by sourceforge + +I think the biggest advantage is having a single site so you don't +need a separate account for the wiki and the forum, and the +functionalities are also nicely integrated with the main site itself. +Also being ad-free is a plus. + +> The forum feature is about as weak as bitweaver. We need a full blown +> forum software for that. + +How about Drupal's forum functionality? Address: +https://174.143.149.98/drupal/. The CMS in general looks better and +simpler than TikiWiki. If the forum's not good enough, then we can of +course use a specialized forum software like phpBB. + +> My priority right now is to get a forum going, either phpBB or similar. +> What do you think of the zetaboards option? Should we go ahead with +> that? + +Otherwise fine, but the ads and the lack of SSL are a minus. + ++
That's a good idea to go in a more web-publishing CMS type direction +like Drupal. That's a better fit and can produce a better looking +website than a wiki. I think I was wrong about wiki. Only a few +specific people will do any website design work and those people can go +ahead and have a separate login. In that case, login integration with +the forum doesn't matter much. For security, I'd almost rather have a +different login than be constantly checking the forum with the same +login that could pwn the website. + +Drupal's forum is less bad than the wikis, but still a long way from +something I would want to use. + +zetaboards pros and cons: + +pros: +- we don't have to worry about bandwidth +- they handle the backend management and security patches + +con: +- lack of SSL +- lack of privacy, everything is logged +- lack of control over the php code for customization +- no CAPTCHA, and if they add one later it might be unacceptable flash +- ads (could pay to get rid of them later if we care enough) +- there's always the risk they abruptly cancel the site for some petty +reason + + +mmalmi@cc.hut.fi wrote: +>> What do you see as the benefits of switching the wiki? +>> Some I can think of: +>> SSL +>> get away from sourceforge's unreliable hosting +>> everything not logged by sourceforge +> +> I think the biggest advantage is having a single site so you don't need +> a separate account for the wiki and the forum, and the functionalities +> are also nicely integrated with the main site itself. Also being ad-free +> is a plus. +> +>> The forum feature is about as weak as bitweaver. We need a full blown +>> forum software for that. +> +> How about Drupal's forum functionality? Address: +> https://174.143.149.98/drupal/. The CMS in general looks better and +> simpler than TikiWiki. If the forum's not good enough, then we can of +> course use a specialized forum software like phpBB. +> +>> My priority right now is to get a forum going, either phpBB or similar. +>> What do you think of the zetaboards option? Should we go ahead with +>> that? +> +> Otherwise fine, but the ads and the lack of SSL are a minus. +> + ++
test 7: + +Backup your data directory before running this, just in case. + +Workaround for the Db::open/Db::close "Bad file descriptor" exception. +Might also make the initial block download faster. The workaround is to +open the database handles and keep them open for the duration of the +program, which is actually the more common thing to do anyway. If we're +not closing and opening all the time, the error shouldn't get a chance +to happen. + +The one exception is wallet.dat, which I still close after writing is +finished so I can flush the transaction logs into the dat file, making +the dat file standalone. That way if someone does a backup while +Bitcoin is running, they'll get a wallet.dat that is valid by itself +without the database transaction logs. + +This is a restructuring of the database handling, so we might find some +new deadlocks. Usually if it deadlocks, either the UI will stop +repainting, or it'll stop using CPU even though it still says Generating. + ++
mmalmi@cc.hut.fi wrote: +> How about Drupal's forum functionality? Address: +> https://174.143.149.98/drupal/. The CMS in general looks better and +> simpler than TikiWiki. If the forum's not good enough, then we can of +> course use a specialized forum software like phpBB. + +Another issue I thought of with zetaboards: most free forum sites won't +let you export the user account database if you want to move. I don't +know why I don't see any other software projects using a free forum, but +I have to assume there might be a reason we would discover later. + +If you can install phpBB3 on your VPS, that's probably the better option. + + From what I've seen on other forums, if the cost of bandwidth becomes +an issue, a small Google Adwords (text links) at the top generates more +than the cost of bandwidth even for very low value traffic like gaming. + This would be much higher value traffic well targeted for high paying +gold merchant keywords and VPN hosts. It could eventually be a valuable +revenue stream you wouldn't want to give away to some free site. + +I want to pre-announce some of the features in version 0.2 on the forum +and try to get some anticipation going. Even if hardly anyone else is +posting, I have seen project forums where most of the posts are the +author announcing what's going on with the latest changes. Users can +see progress going on, see that it's improving and supported and not +abandonware. It's a little like a blog in that case, but easier for +users to use it as a searchable FAQ and better organized. Whenever I +google search software questions, most of the hits are forum posts. ++
I installed both phpBB3 and Simple Machines Forum, which are kind of +the market leaders among the open source forums. SMF's interface looks +better on the first look, especially the admin panel. What do you +think, shall we go with SMF or phpBB3? + + ++
Here's the logs in case they're still useful. + +> I have an idea for a workaround, but it depends on what files the +> errors are on. If you've accumulated several errors in db.log, could +> you send it to me? (even if it's rather simple and boring) Is the file +> listed always blkindex.dat, or does it include addr.dat or wallet.dat +> too? + ++
Finally an easy one. I see a way that could happen on a long operation +such as the initial download. The TryLock bug is unrelated to the db +stuff. Fix will be in test8. + +I've been able to reproduce the db::open/close exception 3 times now on +32-bit linux by hitting it with a continuous flood of non-stop requests. + It looks like even periodically closing the wallet.dat database to +flush it gets the db::close exceptions. I'm disabling the wallet flush +feature on Linux. On Linux we'll never close a database handle until +we're ready to exit. So far with this disabled, no exceptions. + +I'm also implementing the orderly initial block download. Instead of +naively requesting all the blocks at once, it'll request batches of 500 +at a time. This way, it'll receive the blocks before the retry timeout, +so it shouldn't go requesting it from other nodes unless it actually +doesn't receive them or it's too slow. The change is in the requestee's +side, so this functionality won't be visible until your initial block +download is coming from a node that has the new version. + +I'm going to test this some more before sending test8. + +Liberty Standard wrote: +> I started with a fresh data directory with test7. Blocks started to +> download much faster. It only took about 15 seconds where it took a few +> minutes previously with the Linux build. It crashed once while it was +> downloading blocks with the following message in the terminal. +> +> ../include/wx/thrimpl.cpp(50): assert "m_internal" failed in TryLock(): +> wxMutex::TryLock(): not initialized [in child thread] +> Trace/breakpoint trap +> +> I've included my log file, but I forgot to back it up before restarting +> bitcoin, so I'm not sure at what point in the log file the crash occurred. +> +> Fortunately I haven't encountered the segmentation fault yet. The +> frequency of segmentation faults in the previous builds varied quite a +> bit, so I'll keep running it and let you know if i run into any problems. +> +> +> +> On Tue, Nov 17, 2009 at 5:41 AM, Satoshi Nakamoto <satoshin@gmx.com +> <mailto:satoshin@gmx.com>> wrote: +> +> test 7: +> +> Backup your data directory before running this, just in case. +> +> Workaround for the Db::open/Db::close "Bad file descriptor" +> exception. Might also make the initial block download faster. The +> workaround is to open the database handles and keep them open for +> the duration of the program, which is actually the more common thing +> to do anyway. If we're not closing and opening all the time, the +> error shouldn't get a chance to happen. +> +> The one exception is wallet.dat, which I still close after writing +> is finished so I can flush the transaction logs into the dat file, +> making the dat file standalone. That way if someone does a backup +> while Bitcoin is running, they'll get a wallet.dat that is valid by +> itself without the database transaction logs. +> +> This is a restructuring of the database handling, so we might find +> some new deadlocks. Usually if it deadlocks, either the UI will +> stop repainting, or it'll stop using CPU even though it still says +> Generating. +> +> + ++
Thanks. The db::open/close errors confirm the pattern. + +More interesting is the zombie sockets activity towards the end, and the +socket thread monitor tripped but didn't get it going again. Was the +machine disconnected from the net? MSG_DONTWAIT in test5 solved the +zombie problem for Liberty. What test version were you running? (I +should print the test version in the log) + +mmalmi@cc.hut.fi wrote: +> Here's the logs in case they're still useful. +> +>> I have an idea for a workaround, but it depends on what files the +>> errors are on. If you've accumulated several errors in db.log, could +>> you send it to me? (even if it's rather simple and boring) Is the file +>> listed always blkindex.dat, or does it include addr.dat or wallet.dat +>> too? +> + ++
That's great, this is going to fun! I'll research what people say about +the two. + +mmalmi@cc.hut.fi wrote: +> I installed both phpBB3 and Simple Machines Forum, which are kind of +> the market leaders among the open source forums. SMF's interface looks +> better on the first look, especially the admin panel. What do you +> think, shall we go with SMF or phpBB3? +> +> + ++
I think it was test version 5, not completely sure though. I'm running +the Linux version on a laptop which I move between different locations +and use the hibernate-feature instead of powering down. + +> Thanks. The db::open/close errors confirm the pattern. +> +> More interesting is the zombie sockets activity towards the end, and +> the socket thread monitor tripped but didn't get it going again. Was +> the machine disconnected from the net? MSG_DONTWAIT in test5 solved +> the zombie problem for Liberty. What test version were you running? +> (I should print the test version in the log) +> +> mmalmi@cc.hut.fi wrote: +>> Here's the logs in case they're still useful. +>> +>>> I have an idea for a workaround, but it depends on what files the +>>> errors are on. If you've accumulated several errors in db.log, could +>>> you send it to me? (even if it's rather simple and boring) Is the file +>>> listed always blkindex.dat, or does it include addr.dat or wallet.dat +>>> too? +>> + + + ++
I've been configuring the SMF forum. They're saying SMF is better +written than phpBB and more reliable, so if I can get SMF to look right, +that's the preferable choice. + +Most forums run vBulletin (big-boards.com lists 1376 vBulletin, 275 +Invision, 245 phpBB and 41 SMF), so if you don't look like vBulletin or +Invision, it looks like you compromised because you couldn't afford +vBulletin. SMF's UI started out further away from the standard look, +but I've been able to use CSS to make it look more like the others. + +I've done as much as I can with CSS, the rest requires editing PHP files +and uploading images. The forum doesn't have a built in file +upload/edit admin feature, it's added separately as the SMF File Manager +mod. I uploaded the mod but some files need to be chmod 777 so it can +install. If you go to Admin->Packages->Browse Packages and click on +Apply Mod, it offers to do it automatically if you enter an ftp login. + +Someone says you might also have to +mkdir /var/www/bitcoin/smf/packages/temp + +The error in the error log is: +failed to open stream: Permission denied +File: /var/www/bitcoin/smf/Sources/Subs-Package.php +(I'm sure that's just the first file) + +Is it OK to go live with this SMF installation when I'm finished +configuring it? I should be able to point forum.bitcoin.org to it. + +Liberty reports that linux-test8 has been running smoothly. My tests +have been running fine as well. The Linux version looks fully +stabilized to me. + +Good news: he says he made his first sale of bitcoins. Someone bought +out all he had. I had been wondering whether it would be buyers or sellers. + + ++
I don't have the time to configure it today, but I made a temporary +account "maintenance" with password "6648ku5HeK" and full permissions +to /var/www/bitcoin. You can access it via ssh or sftp at port 30000. + +It's okay to go live. Are you setting up a redirect or a dns entry? In +case of dns entry I could set up an Apache vhost so that the forum +address would be http://forum.bitcoin.org/. + +Great that the Linux build works now. It's exciting to see how things +will start rolling with the new release and the forum. Not too long +until I can set up my own exchange and start promoting the currency to +(web) business people. + +NewLibertyStandard should perhaps change his pricing to the market +price (i.e. what people are willing to buy and sell for) so that he +doesn't run out of coins. + +> I've been configuring the SMF forum. They're saying SMF is better +> written than phpBB and more reliable, so if I can get SMF to look +> right, that's the preferable choice. +> +> Most forums run vBulletin (big-boards.com lists 1376 vBulletin, 275 +> Invision, 245 phpBB and 41 SMF), so if you don't look like vBulletin or +> Invision, it looks like you compromised because you couldn't afford +> vBulletin. SMF's UI started out further away from the standard look, +> but I've been able to use CSS to make it look more like the others. +> +> I've done as much as I can with CSS, the rest requires editing PHP +> files and uploading images. The forum doesn't have a built in file +> upload/edit admin feature, it's added separately as the SMF File +> Manager mod. I uploaded the mod but some files need to be chmod 777 so +> it can install. If you go to Admin->Packages->Browse Packages and +> click on Apply Mod, it offers to do it automatically if you enter an +> ftp login. +> +> Someone says you might also have to +> mkdir /var/www/bitcoin/smf/packages/temp +> +> The error in the error log is: +> failed to open stream: Permission denied +> File: /var/www/bitcoin/smf/Sources/Subs-Package.php +> (I'm sure that's just the first file) +> +> Is it OK to go live with this SMF installation when I'm finished +> configuring it? I should be able to point forum.bitcoin.org to it. +> +> Liberty reports that linux-test8 has been running smoothly. My tests +> have been running fine as well. The Linux version looks fully +> stabilized to me. +> +> Good news: he says he made his first sale of bitcoins. Someone bought +> out all he had. I had been wondering whether it would be buyers or +> sellers. + + + ++
Oh yes, one more thing. I haven't configured the server's sendmail +yet, so the php mail functionality doesn't work, but it's not needed +yet anyway. + +> I don't have the time to configure it today, but I made a temporary +> account "maintenance" with password "6648ku5HeK" and full permissions +> to /var/www/bitcoin. You can access it via ssh or sftp at port 30000. +> +> It's okay to go live. Are you setting up a redirect or a dns entry? In +> case of dns entry I could set up an Apache vhost so that the forum +> address would be http://forum.bitcoin.org/. +> +> Great that the Linux build works now. It's exciting to see how things +> will start rolling with the new release and the forum. Not too long +> until I can set up my own exchange and start promoting the currency to +> (web) business people. +> +> NewLibertyStandard should perhaps change his pricing to the market +> price (i.e. what people are willing to buy and sell for) so that he +> doesn't run out of coins. +> +>> I've been configuring the SMF forum. They're saying SMF is better +>> written than phpBB and more reliable, so if I can get SMF to look +>> right, that's the preferable choice. +>> +>> Most forums run vBulletin (big-boards.com lists 1376 vBulletin, 275 +>> Invision, 245 phpBB and 41 SMF), so if you don't look like vBulletin or +>> Invision, it looks like you compromised because you couldn't afford +>> vBulletin. SMF's UI started out further away from the standard look, +>> but I've been able to use CSS to make it look more like the others. +>> +>> I've done as much as I can with CSS, the rest requires editing PHP +>> files and uploading images. The forum doesn't have a built in file +>> upload/edit admin feature, it's added separately as the SMF File +>> Manager mod. I uploaded the mod but some files need to be chmod 777 so +>> it can install. If you go to Admin->Packages->Browse Packages and +>> click on Apply Mod, it offers to do it automatically if you enter an +>> ftp login. +>> +>> Someone says you might also have to +>> mkdir /var/www/bitcoin/smf/packages/temp +>> +>> The error in the error log is: +>> failed to open stream: Permission denied +>> File: /var/www/bitcoin/smf/Sources/Subs-Package.php +>> (I'm sure that's just the first file) +>> +>> Is it OK to go live with this SMF installation when I'm finished +>> configuring it? I should be able to point forum.bitcoin.org to it. +>> +>> Liberty reports that linux-test8 has been running smoothly. My tests +>> have been running fine as well. The Linux version looks fully +>> stabilized to me. +>> +>> Good news: he says he made his first sale of bitcoins. Someone bought +>> out all he had. I had been wondering whether it would be buyers or +>> sellers. + + + ++
> It's okay to go live. Are you setting up a redirect or a dns entry? In +> case of dns entry I could set up an Apache vhost so that the forum +> address would be http://forum.bitcoin.org/. + +DNS entry. + +I'm thinking of merging the bitcoin.org information with your site +content so I can switch the whole bitcoin.org domain over. We need to +replace the current bitcoin.org site with a user-oriented site before +the release. + +If the website and forum switch at the same time, then forum.bitcoin.org +isn't necessary unless we want it that way for looks. + +Have you decided on the CMS to use? I should research Drupal and other +CMSes and see what's the most popular. + +> Great that the Linux build works now. It's exciting to see how things +> will start rolling with the new release and the forum. Not too long +> until I can set up my own exchange and start promoting the currency to +> (web) business people. + +The linux version, setup exe, tor option and better website/forum will +all increase the percentage of visitors who can use it, and the +autostart and minimize to tray will increase how many keep running it. +All those factors multiply together. + +> NewLibertyStandard should perhaps change his pricing to the market price +> (i.e. what people are willing to buy and sell for) so that he doesn't +> run out of coins. + +It's good to start low and only have the price go up. + +I really like that he explains the concept that the cost of electricity +is a minimum floor under the price. At a minimum you either have to pay +the cost in electricity or pay someone the cost of production to make +them for you. ++
Thanks, that worked, I got File Manager installed with SSH. I also +uploaded a few themes into Drupal. I haven't thoroughly gone through +all the available themes yet. + +Looked around at CMSes, Drupal and Joomla are popular. Consensus is +Joomla has a better selection of themes and is easier to learn, though +Drupal may be more intuitive for programmers and customization. Joomla +better for CMS, Drupal better for blogs. Drupal's URLs are search +engine friendly, Joomla not. + +Both have SMF bridge modules available. For future reference, Drupal's +is named "SMFforum Integration". + +mmalmi@cc.hut.fi wrote: +> I don't have the time to configure it today, but I made a temporary +> account "" with password "" and full permissions to +> /var/www/bitcoin. You can access it via ssh or sftp at port 30000. ++
I've done a Joomla site for a customer, and I must say I like Drupal +better, mostly for the admin interface which is easier to use and +integrated into the main site. + +Images aren't loading properly over https, I'll check it out when I can. + +It's easier to just change the bitcoin.org DNS entry, +forum.bitcoin.org is not necessary. + +We could see if we can get a free SSL certificate somewhere, like +http://www.startssl.com/?app=1, so the users wouldn't get a security +warning from a self-signed certificate. However I don't know if they +give certificates for anonymously registered domains. + +> Thanks, that worked, I got File Manager installed with SSH. I also +> uploaded a few themes into Drupal. I haven't thoroughly gone through +> all the available themes yet. +> +> Looked around at CMSes, Drupal and Joomla are popular. Consensus is +> Joomla has a better selection of themes and is easier to learn, though +> Drupal may be more intuitive for programmers and customization. Joomla +> better for CMS, Drupal better for blogs. Drupal's URLs are search +> engine friendly, Joomla not. +> +> Both have SMF bridge modules available. For future reference, Drupal's +> is named "SMFforum Integration". +> +> mmalmi@cc.hut.fi wrote: +>> I don't have the time to configure it today, but I made a temporary +>> account "" with password "" and full permissions to +>> /var/www/bitcoin. You can access it via ssh or sftp at port 30000. + + + ++
I'll go ahead with setting up Drupal then. + +I don't think we should make the site https by default. It's still very +unusual for the public part of sites to be https, probably because it +introduces potential technical complications, delays and greater server +load. As a user I'm a little annoyed when it takes time to verify the +identity of some no-name site I casually came across. For me it seems +like https sites fail to load a lot more often. + +The important thing is to have SSL available for those who need it. +Those who need SSL I think know to try inserting an "s" after http and +see if it works. SMF has code that changes all the links to https if +the URL handed in is https. + +We could add a note on the registration page that if you want SSL, you +can change http to https at any time and approve the self-signed +certificate, or a link that does it, and the TOR page can mention it too. + +We can look into getting a certificate later when things have settled +down. With Class 1, no changes are allowed for a year, which is a risk +if we find issues with the current host and have to change IP. + +mmalmi@cc.hut.fi wrote: +> I've done a Joomla site for a customer, and I must say I like Drupal +> better, mostly for the admin interface which is easier to use and +> integrated into the main site. +> +> Images aren't loading properly over https, I'll check it out when I can. +> +> It's easier to just change the bitcoin.org DNS entry, forum.bitcoin.org +> is not necessary. +> +> We could see if we can get a free SSL certificate somewhere, like +> http://www.startssl.com/?app=1, so the users wouldn't get a security +> warning from a self-signed certificate. However I don't know if they +> give certificates for anonymously registered domains. +> +>> Thanks, that worked, I got File Manager installed with SSH. I also +>> uploaded a few themes into Drupal. I haven't thoroughly gone through +>> all the available themes yet. +>> +>> Looked around at CMSes, Drupal and Joomla are popular. Consensus is +>> Joomla has a better selection of themes and is easier to learn, though +>> Drupal may be more intuitive for programmers and customization. Joomla +>> better for CMS, Drupal better for blogs. Drupal's URLs are search +>> engine friendly, Joomla not. +>> +>> Both have SMF bridge modules available. For future reference, Drupal's +>> is named "SMFforum Integration". +>> +>> mmalmi@cc.hut.fi wrote: +>>> I don't have the time to configure it today, but I made a temporary +>>> account "" with password "" and full permissions to +>>> /var/www/bitcoin. You can access it via ssh or sftp at port 30000. +> +> +> + ++
We need to do a continuity transition with bitcoin.org so the search +engines don't think this is a new site and reset the site start date and +PR data. Google allows a certain number of properties like IP address +or content of the site to change without deleting your site history. To +play it safe, when the IP address changes, the content better stay the +same and vice versa. Even though not much rank has accumulated yet, the +original start date becomes extremely important if the site gets popular +later. + +Steps: +1) copy the current bitcoin.org index.html to the new server exactly as-is. +2) switch the bitcoin.org DNS entry. +3) keep working on the drupal site behind the scenes. +4) after google has had time to update its records, we can switch over +to the drupal site. + +The timing works out well because we can switch to the new forum now and +release the drupal site later when we're ready. + +I'll see if I can figure out how to temporarily move drupal aside to +drupal.php or /drupal/ or something where we can still easily get in and +work on it. ++
That's ok. + +I'll be afk 23.-25.11. + +> We need to do a continuity transition with bitcoin.org so the search +> engines don't think this is a new site and reset the site start date +> and PR data. Google allows a certain number of properties like IP +> address or content of the site to change without deleting your site +> history. To play it safe, when the IP address changes, the content +> better stay the same and vice versa. Even though not much rank has +> accumulated yet, the original start date becomes extremely important if +> the site gets popular later. +> +> Steps: +> 1) copy the current bitcoin.org index.html to the new server exactly as-is. +> 2) switch the bitcoin.org DNS entry. +> 3) keep working on the drupal site behind the scenes. +> 4) after google has had time to update its records, we can switch over +> to the drupal site. +> +> The timing works out well because we can switch to the new forum now +> and release the drupal site later when we're ready. +> +> I'll see if I can figure out how to temporarily move drupal aside to +> drupal.php or /drupal/ or something where we can still easily get in +> and work on it. + + + ++
Drupal's .htaccess file which uses mod_rewrite to allow clean URLs +without the ? parameter is not working because its changes are rejected +because Apache is not configured with "AllowOverride All". This is +needed to make Drupal coexist with the other site the way we want. + +I need access to change these files to fix it: + /etc/apache2/sites-available/default + /etc/apache2/sites-available/default-ssl + /etc/apache2/httpd.conf + +Here's the planned fix. If you do it yourself, please still give me +access to httpd.conf in case I need to change it again later. + +In /etc/apache2/sites-available/default +change the 2nd instance of "AllowOverride None" + to "AllowOverride All" + +and in /etc/apache2/sites-available/default-ssl +change the 2nd instance of "AllowOverride AuthConfig" + to "AllowOverride All" + +replace + /etc/apache2/httpd.conf +with + /home/maintenance/httpd.conf + +This probably requires Apache to be restarted after. +(apache2ctl graceful) + ++
Done. I granted you access to all the files. + +> Drupal's .htaccess file which uses mod_rewrite to allow clean URLs +> without the ? parameter is not working because its changes are rejected +> because Apache is not configured with "AllowOverride All". This is +> needed to make Drupal coexist with the other site the way we want. +> +> I need access to change these files to fix it: +> /etc/apache2/sites-available/default +> /etc/apache2/sites-available/default-ssl +> /etc/apache2/httpd.conf +> +> Here's the planned fix. If you do it yourself, please still give me +> access to httpd.conf in case I need to change it again later. +> +> In /etc/apache2/sites-available/default +> change the 2nd instance of "AllowOverride None" +> to "AllowOverride All" +> +> and in /etc/apache2/sites-available/default-ssl +> change the 2nd instance of "AllowOverride AuthConfig" +> to "AllowOverride All" +> +> replace +> /etc/apache2/httpd.conf +> with +> /home/maintenance/httpd.conf +> +> This probably requires Apache to be restarted after. +> (apache2ctl graceful) + + + ++
The bitcoin.org DNS change went through about 12 hours ago. I'll wait +another 12 hours and then change the Forum tab on +bitcoin.sourceforge.net to go to http://www.bitcoin.org/smf/ + +For future reference, the changes in SMF to update the base url were: + server settings->Forum URL + themes and layout->attempt to reset all themes + there's a path in smileys and message icons + ++
The Bitweaver menu editor is broken, I can't change the Forum link. The +"create and edit menu items" page comes up blank for me: + +http://bitcoin.sourceforge.net/nexus/menu_items.php?menu_id=2 + +You try it, I'm stumped. + +The Forum link should be changed to: +http://www.bitcoin.org/smf/ ++
Fixed. I changed it directly in the database. + +> The Bitweaver menu editor is broken, I can't change the Forum link. +> The "create and edit menu items" page comes up blank for me: +> +> http://bitcoin.sourceforge.net/nexus/menu_items.php?menu_id=2 +> +> You try it, I'm stumped. +> +> The Forum link should be changed to: +> http://www.bitcoin.org/smf/ + + + ++
I just watched the Google Wave introduction video at wave.google.com. +It's the Google's open source proposal for a replacement for the +decades old e-mail protocol, and it looked quite cool. A "wave" is a +communication and collaboration unit that can be read and edited by +multiple users in real time and easily shared to new users, unlike +e-mail threads. It combines the functionality of instant messaging, +wikis, conventional e-mail and social networking, and supports +integration with external applications. + +If you want invites, you can give me the e-mail addresses where you +want them to. If you already have Wave addresses, please give me them +as well. It would be great to see how the system works in practice. + ++
The current site layout looks nice and simple. The logo just should be +changed. If we want to go live quickly, we can just replace it with +the site title and make a better logo later. + +If we need help with site administration or contacts to professional +web graphic artists, we can ask Dave. He does Drupal stuff for work. + ++
It would be also great if you can get the Sourceforge logo from the SF +project admin and add it to the site footer. + +> The current site layout looks nice and simple. The logo just should be +> changed. If we want to go live quickly, we can just replace it with the +> site title and make a better logo later. +> +> If we need help with site administration or contacts to professional +> web graphic artists, we can ask Dave. He does Drupal stuff for work. + + + ++
I autogenerated the new logo at http://cooltext.com/, it's a good +quick solution. You can try a wide variety of different logo styles +there if you have the patience for the slow user interface. + +> It would be also great if you can get the Sourceforge logo from the SF +> project admin and add it to the site footer. +> +>> The current site layout looks nice and simple. The logo just should be +>> changed. If we want to go live quickly, we can just replace it with the +>> site title and make a better logo later. +>> +>> If we need help with site administration or contacts to professional +>> web graphic artists, we can ask Dave. He does Drupal stuff for work. + + + ++
Thanks, I haven't settled on a theme yet. My first experiment was to +try something besides yet another blue site. Another line of thought is +that it should be like a bank website, stately, professional and +official looking to support confidence in financial matters. + +The logo's a little too Disco/web-1990's. I still like your bitweaver +one better, I recreated it with text as a placeholder for now. When the +theme is more settled, I'll think about a matching logo. + +Good idea about the Sourceforge tag, we can use all the graphics we can get. + +I have more to do before we go live, and we need to give the search +engines more time. + +mmalmi@cc.hut.fi wrote: +> I autogenerated the new logo at http://cooltext.com/, it's a good quick +> solution. You can try a wide variety of different logo styles there if +> you have the patience for the slow user interface. +> +>> It would be also great if you can get the Sourceforge logo from the SF +>> project admin and add it to the site footer. +>> +>>> The current site layout looks nice and simple. The logo just should be +>>> changed. If we want to go live quickly, we can just replace it with the +>>> site title and make a better logo later. +>>> +>>> If we need help with site administration or contacts to professional +>>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +> +> +> + ++
The text logo looks quite good actually, except on Windows when the +font antialiasing doesn't work. I turned it into a png. + +I just made a 10,000bc transaction from one account to another, but it +ended up sending 10,000.20bc. Any idea why that could be? + +> Thanks, I haven't settled on a theme yet. My first experiment was to +> try something besides yet another blue site. Another line of thought +> is that it should be like a bank website, stately, professional and +> official looking to support confidence in financial matters. +> +> The logo's a little too Disco/web-1990's. I still like your bitweaver +> one better, I recreated it with text as a placeholder for now. When +> the theme is more settled, I'll think about a matching logo. +> +> Good idea about the Sourceforge tag, we can use all the graphics we can get. +> +> I have more to do before we go live, and we need to give the search +> engines more time. +> +> mmalmi@cc.hut.fi wrote: +>> I autogenerated the new logo at http://cooltext.com/, it's a good +>> quick solution. You can try a wide variety of different logo styles +>> there if you have the patience for the slow user interface. +>> +>>> It would be also great if you can get the Sourceforge logo from the SF +>>> project admin and add it to the site footer. +>>> +>>>> The current site layout looks nice and simple. The logo just should be +>>>> changed. If we want to go live quickly, we can just replace it with the +>>>> site title and make a better logo later. +>>>> +>>>> If we need help with site administration or contacts to professional +>>>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +>> +>> +>> + + + ++
What Windows version/browser doesn't font anti-aliasing work on? IE 6 +on XP anti-aliases, and versions below that have less than 1% market share. + +There's a transaction fee of 0.01 per KB after the first 1KB for +oversized transactions. The first 1KB is free, small transactions are +typically 250 bytes. Doubleclick on the transaction. Think of it like +postage by weight. + +The solution is an extra dialog when sending, something like "This is an +oversized transaction and requires a transaction fee of 0.20bc. Is this +OK?" (is that text good enough or any improvements?) I have the code +already, I'll put it in. + +Then we wouldn't have to explain the 10,000.20bc transaction, but may +still have to explain who the transaction fee goes to. + +mmalmi@cc.hut.fi wrote: +> The text logo looks quite good actually, except on Windows when the font +> antialiasing doesn't work. I turned it into a png. +> +> I just made a 10,000bc transaction from one account to another, but it +> ended up sending 10,000.20bc. Any idea why that could be? +> +>> Thanks, I haven't settled on a theme yet. My first experiment was to +>> try something besides yet another blue site. Another line of thought +>> is that it should be like a bank website, stately, professional and +>> official looking to support confidence in financial matters. +>> +>> The logo's a little too Disco/web-1990's. I still like your bitweaver +>> one better, I recreated it with text as a placeholder for now. When +>> the theme is more settled, I'll think about a matching logo. +>> +>> Good idea about the Sourceforge tag, we can use all the graphics we +>> can get. +>> +>> I have more to do before we go live, and we need to give the search +>> engines more time. +>> +>> mmalmi@cc.hut.fi wrote: +>>> I autogenerated the new logo at http://cooltext.com/, it's a good +>>> quick solution. You can try a wide variety of different logo styles +>>> there if you have the patience for the slow user interface. +>>> +>>>> It would be also great if you can get the Sourceforge logo from the SF +>>>> project admin and add it to the site footer. +>>>> +>>>>> The current site layout looks nice and simple. The logo just should be +>>>>> changed. If we want to go live quickly, we can just replace it with +>>>>> the +>>>>> site title and make a better logo later. +>>>>> +>>>>> If we need help with site administration or contacts to professional +>>>>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +>>> +>>> +>>> +> +> +> + ++
> What Windows version/browser doesn't font anti-aliasing work on? IE 6 +> on XP anti-aliases, and versions below that have less than 1% market +> share. + +Firefox on XP doesn't, and IE also doesn't produce as good quality as +I have on Linux. Screenshots from browsershots.org attached. + +> There's a transaction fee of 0.01 per KB after the first 1KB for +> oversized transactions. The first 1KB is free, small transactions are +> typically 250 bytes. Doubleclick on the transaction. Think of it like +> postage by weight. + +Is there no transaction fee then, if you send the same amount in +multiple small packages? + +> The solution is an extra dialog when sending, something like "This is +> an oversized transaction and requires a transaction fee of 0.20bc. Is +> this OK?" (is that text good enough or any improvements?) I have the +> code already, I'll put it in. + +Sounds fine. + +> Then we wouldn't have to explain the 10,000.20bc transaction, but may +> still have to explain who the transaction fee goes to. + +Where should it go btw? Here it went to the receiver along with all +the other coins. Transaction screenshot attached. + +> mmalmi@cc.hut.fi wrote: +>> The text logo looks quite good actually, except on Windows when the +>> font antialiasing doesn't work. I turned it into a png. +>> +>> I just made a 10,000bc transaction from one account to another, but +>> it ended up sending 10,000.20bc. Any idea why that could be? +>> +>>> Thanks, I haven't settled on a theme yet. My first experiment was to +>>> try something besides yet another blue site. Another line of thought +>>> is that it should be like a bank website, stately, professional and +>>> official looking to support confidence in financial matters. +>>> +>>> The logo's a little too Disco/web-1990's. I still like your bitweaver +>>> one better, I recreated it with text as a placeholder for now. When +>>> the theme is more settled, I'll think about a matching logo. +>>> +>>> Good idea about the Sourceforge tag, we can use all the graphics +>>> we can get. +>>> +>>> I have more to do before we go live, and we need to give the search +>>> engines more time. +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> I autogenerated the new logo at http://cooltext.com/, it's a good +>>>> quick solution. You can try a wide variety of different logo +>>>> styles there if you have the patience for the slow user interface. +>>>> +>>>>> It would be also great if you can get the Sourceforge logo from the SF +>>>>> project admin and add it to the site footer. +>>>>> +>>>>>> The current site layout looks nice and simple. The logo just should be +>>>>>> changed. If we want to go live quickly, we can just replace it with the +>>>>>> site title and make a better logo later. +>>>>>> +>>>>>> If we need help with site administration or contacts to professional +>>>>>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +>>>> +>>>> +>>>> +>> +>> +>> + + + ++
mmalmi@cc.hut.fi wrote: +>> What Windows version/browser doesn't font anti-aliasing work on? IE 6 +>> on XP anti-aliases, and versions below that have less than 1% market +>> share. +> +> Firefox on XP doesn't, and IE also doesn't produce as good quality as I +> have on Linux. Screenshots from browsershots.org attached. + +That's strange, I've seen Firefox 3.5 on XP anti-alias large fonts. +Well anyway, your way is safer. + +I changed it back to text for now though so I can keep tweaking the +colours. Drupal puts the <span> tags and junk in the browser title but +that's fine for testing. + +I added some instruction text on the homepage below the screenshots. + +> Is there no transaction fee then, if you send the same amount in +> multiple small packages? + +True. I suppose the dialog could make it worse by giving people a +chance to experiment with breaking it up. + +I'm making some changes. The largest free transaction will be 60KB, or +about 27,000bc if made of 50bc inputs. I hope that's high enough that +the transaction fee should rarely ever come up. v0.2 nodes will take +free transactions until the block size is over 200K, with priority given +to smaller transactions. + +It's best if you don't talk about this transaction fee stuff in public. + It's there for flood control. We don't want to give anyone any ideas. + +> Where should it go btw? Here it went to the receiver along with all the +> other coins. Transaction screenshot attached. + +You found an infrequent bug in CreateTransaction. It wrote the +transaction for 10000.20 with a fee of 0.22. If you look at the +transaction on the sender's side, it'll be a debit 10000.42 with +transaction fee 0.22. The bug was that it had to make a rare third pass +on calculating the fee, and incorrectly added the first pass' fee to the +amount being sent. Will fix. + ++
I added the sourceforge tracker to bitcoin.sourceforge.net. The +complete selection of links is below if you want a different one. + +I had it on bitcoin.org for a minute, but took it off. It breaks the +lock in SSL mode with a mixed content warning, "partially encrypted" and +"contains unauthenticated content". Anyway, do we really want +sourceforge tracking everyone? It's more privacy friendly without it. + + +--- +The available logos and the correct HTML to use for the Bitcoin project are: + +Logo 1 (Dimensions: 80 x 15; Background: Black) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=8" +width="80" height="15" alt="Get Bitcoin at SourceForge.net. Fast, secure +and Free Open Source software downloads" /></a> + +Logo 2 (Dimensions: 80 x 15; Background: Silver) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=9" +width="80" height="15" alt="Get Bitcoin at SourceForge.net. Fast, secure +and Free Open Source software downloads" /></a> + +Logo 3 (Dimensions: 80 x 15; Background: White) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=10" +width="80" height="15" alt="Get Bitcoin at SourceForge.net. Fast, secure +and Free Open Source software downloads" /></a> + +Logo 4 (Dimensions: 120 x 30; Background: Black) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=11" +width="120" height="30" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + +Logo 5 (Dimensions: 120 x 30; Background: Silver) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=12" +width="120" height="30" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + +Logo 6 (Dimensions: 120 x 30; Background: White) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=13" +width="120" height="30" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + +Logo 7 (Dimensions: 150 x 40; Background: Black) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=14" +width="150" height="40" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + +Logo 8 (Dimensions: 150 x 40; Background: Silver) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=15" +width="150" height="40" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + +Logo 9 (Dimensions: 150 x 40; Background: White) + +HTML Code: <a href="http://sourceforge.net/projects/bitcoin"><img +src="http://sflogo.sourceforge.net/sflogo.php?group_id=244765&type=16" +width="150" height="40" alt="Get Bitcoin at SourceForge.net. Fast, +secure and Free Open Source software downloads" /></a> + + +mmalmi@cc.hut.fi wrote: +> It would be also great if you can get the Sourceforge logo from the SF +> project admin and add it to the site footer. +> +>> The current site layout looks nice and simple. The logo just should be +>> changed. If we want to go live quickly, we can just replace it with the +>> site title and make a better logo later. +>> +>> If we need help with site administration or contacts to professional +>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +> +> +> + ++
I made a copy of the logo onto the local server, so we can still use +it for graphics. It's not disallowed by the SF trademark policy. + +> I added the sourceforge tracker to bitcoin.sourceforge.net. The +> complete selection of links is below if you want a different one. +> +> I had it on bitcoin.org for a minute, but took it off. It breaks the +> lock in SSL mode with a mixed content warning, "partially encrypted" +> and "contains unauthenticated content". Anyway, do we really want +> sourceforge tracking everyone? It's more privacy friendly without it. +> +> mmalmi@cc.hut.fi wrote: +>> It would be also great if you can get the Sourceforge logo from the +>> SF project admin and add it to the site footer. +>> +>>> The current site layout looks nice and simple. The logo just should be +>>> changed. If we want to go live quickly, we can just replace it with the +>>> site title and make a better logo later. +>>> +>>> If we need help with site administration or contacts to professional +>>> web graphic artists, we can ask Dave. He does Drupal stuff for work. +>> +>> +>> + + + ++
I went ahead and put the new Drupal site online. Enough time has passed +for a safe transition, and the site looks good. There's more work I +should do on the theme, but it's good enough so far. This is a huge +improvement over the old bitcoin.org page. + ++
Good job. I redirected bitcoin.sourceforge.net there. + +> I went ahead and put the new Drupal site online. Enough time has +> passed for a safe transition, and the site looks good. There's more +> work I should do on the theme, but it's good enough so far. This is a +> huge improvement over the old bitcoin.org page. + + + ++
I wasn't satisfied with my custom2 theme. It felt crowded, the +header/logo seemed wrong and the heavy left margin stationery style is +outdated. + +custom3 online now is a more standard layout similar to a lot of +commercial software homepages. Maybe it's just me, but I really like +the random blue squares. ++
> It's almost time to release version 0.2. If you have a minute, could +> you try this release candidate (attached)? If there aren't any +> problems and I don't think of anything I missed, this could be released +> in a day or two. + +No problems so far. Seems fine. + +> I zipped the setup exe because I doubt the e-mail servers will allow +> exe attachments. I'm not sure it'll allow zip either, but pretty sure +> the tar.gz one will get through. +> +> Attachments: +> 3,092,916 bitcoin-0.2.0-setup.zip +> 2,402,522 bitcoin-0.2.0-linux.tar.gz +> 3,061,059 bitcoin-0.2.0-win32.zip + +Both got through here. + ++
> Found something I felt I had to fix with the initial block download. +> Do you mind testing an initial block download again? + +The first time I tried it on Windows, the initial download took a few +minutes to start, even though it got many connections quickly. I tried +again twice, and didn't have the same problem again. I don't know +whether it's related to your latest update or not. + +On Ubuntu it worked fine. + +> Hope this isn't in the middle of your final exams right now. + +Well actually it is, but it's not too bad. Time is a matter of arrangement. + ++
mmalmi@cc.hut.fi wrote: +> The first time I tried it on Windows, the initial download took a few +> minutes to start, even though it got many connections quickly. I tried +> again twice, and didn't have the same problem again. I don't know +> whether it's related to your latest update or not. + +Most of the fixes are on the sender's side, so if you were downloading the network upgrades to 0.2. + +How long did the initial download take? ++
>> The first time I tried it on Windows, the initial download took a +>> few minutes to start, even though it got many connections quickly. +>> I tried again twice, and didn't have the same problem again. I +>> don't know whether it's related to your latest update or not. +> +> Most of the fixes are on the sender's side, so if you were downloading +> from a 0.1.5 node, some problems are still there. It'll get better as +> the network upgrades to 0.2. +> +> How long did the initial download take? + +About 1,5h. + ++
Here's the planned release announcement text. Probably releasing shortly. + +Bitcoin version 0.2 is here! + +Download links: +Windows Setup Program +Windows Zip File +Linux (tested on Ubuntu) + +New features + +Martti Malmi + - Minimize to system tray option + - Autostart on boot option so you can keep it running in the +background automatically + - New options dialog layout for future expansion + - Setup program for Windows + - Linux version +Satoshi Nakamoto + - Multi-processor support for coin generation + - Proxy support for use with TOR + - Fixed some slowdowns in the initial block download + - Various refinements to keep the network running smoothly + +We also have a new forum at http://www.bitcoin.org/smf/ if you have any +questions. + +Thanks to Martti Malmi (sirius-m) for his coding work and for hosting +the new site and forum, and thanks to New Liberty Standard for testing +the Linux version. + +Satoshi Nakamoto ++
Bitcoin 0.2 is here! + +Download (Windows, and now Linux version available) +http://sourceforge.net/projects/bitcoin/files/ + +New Features + +Martti Malmi + - Minimize to system tray option + - Autostart on boot option so you can keep it running in the +background automatically + - New options dialog layout for future expansion + - Setup program for Windows + - Linux version (tested on Ubuntu) +Satoshi Nakamoto + - Multi-processor support for coin generation + - Proxy support for use with TOR + - Fixed some slowdowns in the initial block download + +We also have a new forum at http://www.bitcoin.org/smf/ + +Many thanks to Martti (sirius-m) for all his development work, and to +New Liberty Standard for his help with testing the Linux version. + +Satoshi Nakamoto + +------------------------------------------------------------------------------ +This SF.Net email is sponsored by the Verizon Developer Community +Take advantage of Verizon's best-in-class app development support +A streamlined, 14 day to market process makes app distribution fast and easy +Join now and get one step closer to millions of Verizon customers +http://p.sf.net/sfu/verizon-dev2dev +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
I have registered the domain name bitcoinexchange.com and will start +coding the service sometime soon as a nice leisure activity. I'm +envisioning a simple Google-like interface with no registration and +only two texts fields on the front page, where you insert the amount +of money you wish to trade, and either your PayPal address to buy +dollars or bitcoin address to buy bitcoins. On the next page you'll +get a new bitcoin address for sending the coins or a check code for +the PayPal transaction text. + +PayPal is good for the beginning - it's simple and has no startup +costs, but later on I might accept credit cards also. + +Do you still need the maintenance account? It's ok if you do, but +change the password to something else. + ++
Thanks for creating the maintenance account, it would have been +impossible to do all that without it. I'm really always going to need +it. OK, I changed the password to a 20 character random password. + +That's a good domain. People rarely type domain names anymore, they use +autocomplete or click links on search engines. + +I need to make a way for you to programmatically get new generated +bitcoin addresses. Either that or you could have them send to your IP +address, but then you have to rely on them to put the order number in +the comment. + +When generating the new address, there can be an option to add an entry +to the address book associated with the address, so the received +transaction will be labelled. I kinda hid the labels after early users +found them confusing, but it would be very helpful for this application. + You have to widen up the comment column to see them. + +Are you going to manually review and enter orders, at least to begin +with? I sure would. + +I'm thinking I should move the UI in the direction of having the user +ask for their bitcoin address when they want one. "give me a bitcoin to +receive a payment with". I suppose next to the send button, there would +by a receive button, you press it and it says "here's a new address to +use, here's the button to copy it to the clipboard, do you want to label +it?" and maybe some explanation about why you shouldn't reuse addresses. + +Or maybe just a "New Address" button next to the address box that you +should hit each time to change it. + +mmalmi@cc.hut.fi wrote: +> I have registered the domain name bitcoinexchange.com and will start +> coding the service sometime soon as a nice leisure activity. I'm +> envisioning a simple Google-like interface with no registration and only +> two texts fields on the front page, where you insert the amount of money +> you wish to trade, and either your PayPal address to buy dollars or +> bitcoin address to buy bitcoins. On the next page you'll get a new +> bitcoin address for sending the coins or a check code for the PayPal +> transaction text. +> +> PayPal is good for the beginning - it's simple and has no startup costs, +> but later on I might accept credit cards also. +> +> Do you still need the maintenance account? It's ok if you do, but change +> the password to something else. +> + ++
> I need to make a way for you to programmatically get new generated +> bitcoin addresses. Either that or you could have them send to your IP +> address, but then you have to rely on them to put the order number in +> the comment. + +I'd also need at least the command line tools to check if coins have +been received and to send coins. It would require some way to +communicate with the Bitcoin process running in the background. I +don't know how that should be done, maybe with something RPC related. + +It would also be great if the background process was non-graphical - +the VPS on the current service level doesn't have enough memory to run +the X Windowing environment, unless I come up with some ways to free +memory. + +> Are you going to manually review and enter orders, at least to begin +> with? I sure would. + +Yes, at least to begin with, when the customer sells bc's and receives +dollars. I wouldn't give a script the access to my dollar reserves so +lightly. The other way around (customer's dollars -> bitcoins) it +doesn't feel that insecure, and it's certainly nicer for the customer +to receive his bitcoins immediately. + +> mmalmi@cc.hut.fi wrote: +>> I have registered the domain name bitcoinexchange.com and will +>> start coding the service sometime soon as a nice leisure activity. +>> I'm envisioning a simple Google-like interface with no registration +>> and only two texts fields on the front page, where you insert the +>> amount of money you wish to trade, and either your PayPal address +>> to buy dollars or bitcoin address to buy bitcoins. On the next page +>> you'll get a new bitcoin address for sending the coins or a check +>> code for the PayPal transaction text. +>> +>> PayPal is good for the beginning - it's simple and has no startup +>> costs, but later on I might accept credit cards also. +>> +>> Do you still need the maintenance account? It's ok if you do, but +>> change the password to something else. +>> + + + ++
mmalmi@cc.hut.fi wrote: +> I'd also need at least the command line tools to check if coins have +> been received and to send coins. It would require some way to +> communicate with the Bitcoin process running in the background. I don't +> know how that should be done, maybe with something RPC related. +> +> It would also be great if the background process was non-graphical - the +> VPS on the current service level doesn't have enough memory to run the X +> Windowing environment, unless I come up with some ways to free memory. + +I had been wondering why everyone keeps harping on no-UI, when already +you can run it with only a small icon on the tray, which is common for +server services on Windows. So I guess this is why. I had chalked it +up to unix snobbery if they couldn't abide a tiny little icon on a +desktop they never see. + +Not opening any windows is easy, but it may fail because the gtk +libraries aren't there. wxWidgets has __WXBASE__ for "Only wxBase, no +GUI features". You could try building for that instead of __WXGTK__ and +see what happens. It would be preferable if there's any way to do it as +a command line switch on the same executable, rather than yet another +build variation to release. + +How much memory do you have to work with? Bitcoin necessarily takes a +fair bit of memory; about 75MB on Windows. Is that a problem? + +Command line control is one of the next things on the list. I want to +design the API carefully. + +Receiving payments is the part that has a lot of design choices to be +made. The caller needs to identify the transactions of interest, that's +where the one-bitcoin-address-per-transaction model helps. Searching +the comments text for an order number is another possibility. There's +polled, asking what has been received to the given bitcoin address, and +event driven. I guess in event driven, bitcoin would be told to run a +command line when a certain amount is received to a certain bitcoin address. + ++
> How much memory do you have to work with? +The VPS has 320MB RAM, 50MB of which is currently free. There's also +500MB swap space. + +> Bitcoin necessarily takes a +> fair bit of memory; about 75MB on Windows. Is that a problem? + +Sure about that? Windows task manager shows about 13MB memory usage here. + ++
You're right, I was looking at a test run with 250,000 blocks... duh. + +A normal one shows 17MB memory usage and 10MB VM size. + +mmalmi@cc.hut.fi wrote: +>> How much memory do you have to work with? +> The VPS has 320MB RAM, 50MB of which is currently free. There's also +> 500MB swap space. +> +>> Bitcoin necessarily takes a +>> fair bit of memory; about 75MB on Windows. Is that a problem? +> +> Sure about that? Windows task manager shows about 13MB memory usage here. +> + ++
I have a prototype of the bitcoinexchange.com service up now (auth: +bitcoin/bit). It's running on the Python-powered Django web +application framework, which is a pleasure to work with, compared to +php. + +I'll have to do some studying for a few days now, after which I can +return to work with the exchange service. Among other things I'll fix +the pricing so that the price of Bitcoins grows towards infinity when +my supply of them gets closer to zero. That way I can find the market +rate and stay at the point where supply meets demand. I'm not yet +completely sure what the parameters of the hyperbolic pricing curve +should be, so that's something to think about. + ++
Have you decided upon the inter-process calling method of the Bitcoin +API yet? An easy solution would be the socket interface provided by +wxWidgets: http://docs.wxwidgets.org/trunk/overview_ipc.html. The +Bitcoin program running a wxServer could be then accessed by calling +the bitcoin executable from the command line or by coding your own +wxClient app. + +Another option would be to just use the plain BSD sockets. + +Can you send me a 64-bit Linux binary of Bitcoin if you have one? I +tried compiling on the VPS, but it ran out of memory. Tried the 32-bit +version (with ia32-libs) also, but it didn't find the shared libraries. + ++
You could always exchange for Liberty Reserve. It's an online currency +similar to e-Bullion, Pecunix or Webmoney that allows exchanges no +questions asked and with privacy. + +LR and the others are hard to buy but easy to cash out. Hard to buy +because exchangers are very cautious about getting ripped off by +reversed payments, so they require more details and holding time. +Cashing out is very easy. LR is non-reversible, so there are oodles of +exchanges eager to turn LR into any kind of payment. + +Bitcoin is the reverse, in that it's easy to get Bitcoins just by +generating them. It would be easy for customers to go +bitcoin->LR->cash, bitcoin->LR->gold, bitcoin->LR->paypal or maybe they +just want to save the money, then just bitcoin->LR. + +There's also the idea BTC2PSC had to sell paysafecards for bitcoins. +Either online delivery by sending the card number by e-mail, or delivery +of the unopened physical card in the mails. There are many variations +of these cards. In some countries, they're called Gift Cards, and can +be used wherever credit cards are accepted. I think they're used more +by people who don't have the credit history to get a real credit card, +so they buy gift cards themselves to pay for things that require a +credit card. + ++
Don't rush ahead and get yourself rejected from all the payment options +before you've had time to see if there's a better approach. I suggest +you wait before contacting any more payment processors. You may get +ideas from things other users come up with and try. + +Just some random incomplete ideas: There may be a way to position it as +an intermediate credit for micropayments for some virtual good or +something. Or maybe if the payments are only in one direction. If you +only buy bitcoins, then you're only sending money out not taking +people's money, that would still be useful to peg the currency. That +might be payment for computer time. + +Credit card is only one way. Don't even talk about the idea of +returning money to customer's credit cards. Credit card companies hate +that. + +In any case, any payment processor is going to expect you to be selling +something real. + +Do you have electronic transfer or paper cheque in your country? (even +if only within Europe) ++
Is there any way to find out what the missing shared libraries are? It +would help to know. + +It probably needs the gtk libraries, in which case you'll have the same +problem with the 64-bit version. I would like to have a single +executable that can also run on a UI-less system, but I'm not sure how +on linux to link to things but still be able to run and not use them if +the library is not present. Maybe we should statically link the GTK. +Licensewise, it's LGPL, but since it's only used on unix, that would be +OK. (we can't link LGPL stuff on windows because we provide the OpenSSL +DLL, but on linux OpenSSL comes with the OS) + +My 64-bit (debug stripped) executable is attached. It includes untested +changes that are not in SVN yet: UI changes and the wallet fSpent flag +resync stuff. + +I've been researching options for interprocess calling. I want +something that will be easy for a variety of server side languages to +call, particularly PHP. Cross-platform to windows is a plus. + +I'm not sure if I want it to be something that can be accessed across +the network. That would introduce security issues. If it can only be +accessed on the local system, then local security authentication covers +it, and it is incapable of being hacked remotely. + +At surface level, not looking into any details yet, the current front +runners are: +D-Bus: + local system only + used by qt, gnome and skype + bindings: c, python, java, c++, + php listed as "in progress" + .net listed as unmaintained + not sure how ready it is on windows +XML-RPC: + widely used, built in libraries on PHP + it's more for web clients to talk to server, transport is http, so +its a security question + +Is it possible to open a socket that can only be accessed locally? + +mmalmi@cc.hut.fi wrote: +> Have you decided upon the inter-process calling method of the Bitcoin +> API yet? An easy solution would be the socket interface provided by +> wxWidgets: http://docs.wxwidgets.org/trunk/overview_ipc.html. The +> Bitcoin program running a wxServer could be then accessed by calling the +> bitcoin executable from the command line or by coding your own wxClient +> app. +> +> Another option would be to just use the plain BSD sockets. +> +> Can you send me a 64-bit Linux binary of Bitcoin if you have one? I +> tried compiling on the VPS, but it ran out of memory. Tried the 32-bit +> version (with ia32-libs) also, but it didn't find the shared libraries. +> + ++
> Is there any way to find out what the missing shared libraries are? It +> would help to know. + +This is what "ldd bitcoin" says: + + linux-gate.so.1 => (0xf778c000) + libcrypto.so.0.9.8 => /usr/lib32/i686/cmov/libcrypto.so.0.9.8 +(0xf762a000) + libgtk-x11-2.0.so.0 => not found + libgthread-2.0.so.0 => not found + libSM.so.6 => /usr/lib32/libSM.so.6 (0xf7621000) + libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf7533000) + libm.so.6 => /lib32/libm.so.6 (0xf750f000) + libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf7502000) + libc.so.6 => /lib32/libc.so.6 (0xf73b0000) + libdl.so.2 => /lib32/libdl.so.2 (0xf73ac000) + libgdk-x11-2.0.so.0 => not found + libXinerama.so.1 => /usr/lib32/libXinerama.so.1 (0xf73a8000) + libgdk_pixbuf-2.0.so.0 => not found + libX11.so.6 => /usr/lib32/libX11.so.6 (0xf72b9000) + libpango-1.0.so.0 => not found + libgobject-2.0.so.0 => not found + libglib-2.0.so.0 => not found + libpthread.so.0 => /lib32/libpthread.so.0 (0xf72a1000) + libpng12.so.0 => /usr/lib32/libpng12.so.0 (0xf727e000) + libz.so.1 => /usr/lib32/libz.so.1 (0xf7269000) + libICE.so.6 => /usr/lib32/libICE.so.6 (0xf7251000) + /lib/ld-linux.so.2 (0xf778d000) + libXext.so.6 => /usr/lib32/libXext.so.6 (0xf7243000) + libxcb-xlib.so.0 => /usr/lib32/libxcb-xlib.so.0 (0xf7241000) + libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf7229000) + libXau.so.6 => /usr/lib32/libXau.so.6 (0xf7226000) + libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf7220000) + +Notfounds seem to be gtk-libraries indeed. I have those files in my +/usr/lib folder, but maybe they're ignored because they're 64bit, or +maybe only /usr/lib32 is searched. I haven't tested on other 64bit +machines. + +> My 64-bit (debug stripped) executable is attached. It includes +> untested changes that are not in SVN yet: UI changes and the wallet +> fSpent flag resync stuff. + +The package doesn't open, it says "not in gzip format". + +> Is it possible to open a socket that can only be accessed locally? + +Yes, you can use IPC sockets ("Unix domain sockets") which are local +only. That's done in the wx-api by using a filename in place of a port +number. I committed an example of how the wxServer-Client +communication is used, you can revert if you want to. Now there's the +-blockamount command line option which asks the running instance for +the block chain length. + +I think this command line method could already be used from PHP, but +it might be lighter if php itself could call the socket server +directly. The wx's IPC overview mentions wxSocketEvent, wxSocketBase, +wxSocketClient and wxSocketServer as being "Classes for the low-level +TCP/IP API", which might be easier to use from php than what I used +now (wxServer, wxClient, wxConnection). I'll look more into it. + + + ++
I must have accidentally typed j instead of z. It's bz2 format. Rename +to .tar.bz2 or just do tar -jxvf + +> The package doesn't open, it says "not in gzip format". +> ++
What was the reason for this change? + +#if !wxUSE_UNICODE +... + if (str.Find('Â') != wxNOT_FOUND) + str.Remove(str.Find('Â'), 1); +to: + if (str.Find('�') != wxNOT_FOUND) + str.Remove(str.Find('�'), 1); + +wxFormBuilder turns the (c) symbol into UTF-8 automatically. On +wxWidgets-2.8.9 ansi, it shows as a copyright symbol with an extra trash +character, which this hack fixes up for the non-unicode (ansi) case. + ++
Good, then no need to consider d-bus. Is there something like IPC +sockets on Windows? I guess we could look how wx does it, or maybe the +XML-RPC library will already know what to do. Windows has named pipes, +maybe that's the best analogue. + +I don't think I want to invent my own RPC protocol, I want to use an +existing standard. PHP, Java, Python or anything will be able to talk +to the server directly the same way the command line commands do. + +I'm going to start reading on XML-RPC. It's coming up in searches as +the most widely used protocol and widely supported. PHP includes it in +its standard libraries. + +>> Is it possible to open a socket that can only be accessed locally? +> +> Yes, you can use IPC sockets ("Unix domain sockets") which are local +> only. That's done in the wx-api by using a filename in place of a port +> number. I committed an example of how the wxServer-Client communication +> is used, you can revert if you want to. Now there's the -blockamount +> command line option which asks the running instance for the block chain +> length. +> +> I think this command line method could already be used from PHP, but it +> might be lighter if php itself could call the socket server directly. +> The wx's IPC overview mentions wxSocketEvent, wxSocketBase, +> wxSocketClient and wxSocketServer as being "Classes for the low-level +> TCP/IP API", which might be easier to use from php than what I used now +> (wxServer, wxClient, wxConnection). I'll look more into it. +> +> +> + ++
I noticed this in the docs for wxSocketServer::Accept(bool wait = true): +"If wait is true and there are no pending connections to be accepted, it +will wait for the next incoming connection to arrive. **Warning: This +will block the GUI." + +wxWidgets is pathologically single-threaded. Not only single-threaded, +but must-be-the-GUI-thread-ed. Even for something as non-UI as +wxStandardPaths I got nailed. All this is fine for UI code, since this +is the same constraint placed by Windows anyway, but for UI-less server +daemon code, wx calls are uncertain. + +Status of my research currently: + +For PHP, Python, etc to access the server, we need to use regular +sockets. I think we can make it local-only by binding to localhost +only, so it can only be accessed through the loopback. They say it's +also watertight to simply check the IP of connections received and +disconnect anything not 127.0.0.1. May as well do both. + +XML-RPC is a bit fat. There are 4 libraries for C++ but they're all big +and hard to build, dependencies, license issues. Some posters complain +all the C++ and PHP XML-RPC libraries are buggy. + +JSON-RPC is a simpler more elegant standard. It's simple enough I could +use a generic JSON parser. + +PHP, Python and Java all have good implementations of JSON-RPC. + +I'm currently leaning towards JSON-RPC. ++
I didn't change it knowingly, must have been some encoding problem. + +> What was the reason for this change? +> +> #if !wxUSE_UNICODE +> ... +> if (str.Find('Â') != wxNOT_FOUND) +> str.Remove(str.Find('Â'), 1); +> to: +> if (str.Find('�') != wxNOT_FOUND) +> str.Remove(str.Find('�'), 1); +> +> wxFormBuilder turns the (c) symbol into UTF-8 automatically. On +> wxWidgets-2.8.9 ansi, it shows as a copyright symbol with an extra +> trash character, which this hack fixes up for the non-unicode (ansi) +> case. + + + ++
Liberty Reserve sounds good. I could first make a service that only +accepts LR, and add more options later. The weakness is that buying LR +is an extra step of inconvenience when the customer just wants to get +Bitcoins. But maybe I don't have too much choice here. + +> Do you have electronic transfer or paper cheque in your country? (even +> if only within Europe) + +Yes, electronic bank transfer is available. During 2010 most European +countries will become a part of SEPA (Single Euro Payments Area), +which means that all payments within Europe are to be considered +domestic. Banks will have to apply the same fees and standards to all +domestic transfers, so they'll probably all be free of charge and +complete in one bank day. For international transfers there's the +SWIFT/IBAN system, which usually costs some extra. + +A longer term project for my exchange service would be to see what +kinds of integration options the banks have to offer. Bank transfers +would reach nearly as many customers as credit cards do. + ++
Maybe the current difficulty of buying LR is already the limit of how +easy it can get in that direction. + +Every conventional payment method has refutability as their way to cope +with their lack of passwords and crypto. The system is wide open to +copying plaintext credit card numbers and account numbers, and they deal +with it by reversing the transaction after the fact. The system works +for physical goods that have to be delivered somewhere, and services +which can't be resold. It's a problem when it interfaces with precious +metals and currency conversion. + +The first step of being easy in one direction, bitcoin->LR or anything +of established value, goes a long way. Even those who don't use the +conversion still benefit from knowing that they could. Trading bitcoin +becomes an easier way to trade the ability to claim LR, similar to how +paper money was once the right to claim gold. Nobody has to ever +actually claim the LR to get the benefit of having the option that they +could if they wanted to. + +A lot of times you just need a minuscule amount of online currency. The +hassle of buying the other online currencies is too much for buying a +small amount. The ease of getting a small amount of bitcoin may help +bootstrap an ecosystem of sellers of micropayment sized online goods +selling to that market. If the sellers can get LR for bitcoins, they're +happy, and that may be subsidized at first by investors who want to buy +bc in large lots. + +The main thing holding online currencies back is the lack of an easy way +to get a small amount of currency. Bitcoin opens that up. It'll be the +only online currency that's both easy to cash out and easy to get a +small amount. It'll just be the usual harder difficulty to buy a large +amount. + +mmalmi@cc.hut.fi wrote: +> Liberty Reserve sounds good. I could first make a service that only +> accepts LR, and add more options later. The weakness is that buying LR +> is an extra step of inconvenience when the customer just wants to get +> Bitcoins. But maybe I don't have too much choice here. +> +>> Do you have electronic transfer or paper cheque in your country? (even +>> if only within Europe) +> +> Yes, electronic bank transfer is available. During 2010 most European +> countries will become a part of SEPA (Single Euro Payments Area), which +> means that all payments within Europe are to be considered domestic. +> Banks will have to apply the same fees and standards to all domestic +> transfers, so they'll probably all be free of charge and complete in one +> bank day. For international transfers there's the SWIFT/IBAN system, +> which usually costs some extra. +> +> A longer term project for my exchange service would be to see what kinds +> of integration options the banks have to offer. Bank transfers would +> reach nearly as many customers as credit cards do. +> + ++
Right, I'll change it to this so it doesn't get broken again: + if (str.Find('\xC2') != wxNOT_FOUND) + str.Remove(str.Find('\xC2'), 1); + +mmalmi@cc.hut.fi wrote: +> I didn't change it knowingly, must have been some encoding problem. +> +>> What was the reason for this change? +>> +>> #if !wxUSE_UNICODE +>> ... +>> if (str.Find('Â') != wxNOT_FOUND) +>> str.Remove(str.Find('Â'), 1); +>> to: +>> if (str.Find('�') != wxNOT_FOUND) +>> str.Remove(str.Find('�'), 1); +>> +>> wxFormBuilder turns the (c) symbol into UTF-8 automatically. On +>> wxWidgets-2.8.9 ansi, it shows as a copyright symbol with an extra +>> trash character, which this hack fixes up for the non-unicode (ansi) +>> case. +> +> +> + ++
The JSON-RPC implementation is going well. I'm using boost::asio for +sockets. JSON-RPC can be plain socket or HTTP, but it seems most other +implementations are HTTP, so I made my own simple HTTP headers. For +JSON parsing I'm using JSON Spirit, which makes full use of STL and has +been really nice to use. It's header-only so it's no added build work, +and small enough to just add it to our source tree. MIT license. This +should all be working in a few more days. + +The forum sure is taking off. I didn't expect to have so much activity +so fast. ++
That's great! I'll start familiarizing myself with Liberty Reserve and +its api. + +> The JSON-RPC implementation is going well. I'm using boost::asio for +> sockets. JSON-RPC can be plain socket or HTTP, but it seems most other +> implementations are HTTP, so I made my own simple HTTP headers. For +> JSON parsing I'm using JSON Spirit, which makes full use of STL and has +> been really nice to use. It's header-only so it's no added build work, +> and small enough to just add it to our source tree. MIT license. This +> should all be working in a few more days. +> +> The forum sure is taking off. I didn't expect to have so much activity +> so fast. + + + ++
Does Drupal have any special multi-language support, or do you just +create copies of pages by hand? + +BlueSky offered to do translation on the forum. If you create a +www.bitcoin.org/zh/ copy of the site and give him an account with just +the ability to create new pages and edit text, he'll probably translate +the site into Chinese for you and maybe maintain it. ++
Drupal supports multiple languages. I didn't yet figure out how to +make it automatically show the translation at bitcoin.org/zh-hans +though. + +> Does Drupal have any special multi-language support, or do you just +> create copies of pages by hand? +> +> BlueSky offered to do translation on the forum. If you create a +> www.bitcoin.org/zh/ copy of the site and give him an account with just +> the ability to create new pages and edit text, he'll probably translate +> the site into Chinese for you and maybe maintain it. + + + ++
I got the translations working correctly, now it should automatically +detect the language from the browser settings. Choosing manually is of +course also possible. I asked the translators to send me their +translations as pm or e-mail. I guess I'll make a Finnish translation +myself at some point. Multiple translations add to the site's +credibility. + +Drupal is asking to do a security update. Do we have other customized +files we need to backup than those located in the "sites" directory? + ++
I didn't make any changes to Drupal code. The only thing other than +installing themes was the .htaccess file (which really is needed, it +didn't work in the global config file). + +It was only SMF where I made some PHP changes. + +You might find it preferable not to translate it into your own language. + Often the standard answer about legalities is that it's only intended +for people in other countries. Translating it into your home language +weakens that argument. + +mmalmi@cc.hut.fi wrote: +> I got the translations working correctly, now it should automatically +> detect the language from the browser settings. Choosing manually is of +> course also possible. I asked the translators to send me their +> translations as pm or e-mail. I guess I'll make a Finnish translation +> myself at some point. Multiple translations add to the site's credibility. +> +> Drupal is asking to do a security update. Do we have other customized +> files we need to backup than those located in the "sites" directory? +> + ++
I'm not too worried about that, since I'm not doing anything illegal, +even with my exchange service. If I were, it wouldn't help me that I'm +only offering the service for foreigners. Things may of course be +different under other jurisdictions, but that's how it is in my +country. The law monopoly here is less uncivilized than many others. + +> You might find it preferable not to translate it into your own +> language. Often the standard answer about legalities is that it's only +> intended for people in other countries. Translating it into your home +> language weakens that argument. + ++
I uploaded my JSON-RPC and command line implementation to SVN. I'm +waiting to post on the forum when I've had more time to think about the +commands. At least some method names are going to change. + +To enable the RPC server, add the switch -server. It's not on by default. + +Client commands are without any switches, as such: +bitcoin getblockcount +bitcoin getdifficulty +bitcoin getnewaddress somelabel +bitcoin sendtoaddress 1DvqsbZ... 1.00 +bitcoin getallpayments 0 +bitcoin stop + +Applications would normally use JSON-RPC directly, not command line. + +I haven't tested my JSON-RPC server with anything else yet. If you do, +please tell me how it goes. You're using Python, right? + +Getting the Linux version to run without the GTK installed will be a +separate task. + +mmalmi@cc.hut.fi wrote: +> That's great! I'll start familiarizing myself with Liberty Reserve and +> its api. +> +>> The JSON-RPC implementation is going well. I'm using boost::asio for +>> sockets. JSON-RPC can be plain socket or HTTP, but it seems most other +>> implementations are HTTP, so I made my own simple HTTP headers. For +>> JSON parsing I'm using JSON Spirit, which makes full use of STL and has +>> been really nice to use. It's header-only so it's no added build work, +>> and small enough to just add it to our source tree. MIT license. This +>> should all be working in a few more days. +>> +>> The forum sure is taking off. I didn't expect to have so much activity +>> so fast. +> +> +> + ++
> I haven't tested my JSON-RPC server with anything else yet. If you do, +> please tell me how it goes. You're using Python, right? +> +> Getting the Linux version to run without the GTK installed will be a +> separate task. + +Yes, using Python. I didn't test the JSON-RPC yet as I don't have +Bitcoin running on the vps yet. It doesn't work without a window +manager even if GTK libraries are installed. I asked about it at +wxWidgets forum (http://wxforum.shadonet.com/viewtopic.php?t=26954) +but they didn't have much clue. Maybe we'll just need to make two +different binaries. + ++
I'm moving in the direction of making transactions automated only when +the customer buys coins with SMS payment provided by ZayPay. Pecunix +is the only reliable and practical enough e-currency that I'd store my +reserves in, but the exchange fees are quite high (about 5%). + +When I'm buying coins, my recommended payment method would be IBAN +transfer. I could also say "contact us if you want to buy/sell with +any other payment option" and handle each order separately. I could +manually accept single orders with even PayPal, as long as I don't +store my money there and the customer pays the fees. + ++
mmalmi@cc.hut.fi wrote: +>> I haven't tested my JSON-RPC server with anything else yet. If you do, +>> please tell me how it goes. You're using Python, right? +>> +>> Getting the Linux version to run without the GTK installed will be a +>> separate task. +> +> Yes, using Python. I didn't test the JSON-RPC yet as I don't have +> Bitcoin running on the vps yet. It doesn't work without a window manager +> even if GTK libraries are installed. I asked about it at wxWidgets forum +> (http://wxforum.shadonet.com/viewtopic.php?t=26954) but they didn't have +> much clue. Maybe we'll just need to make two different binaries. + +I will probably relent and do that. I can move init and shutdown into +init.cpp or start.cpp or something, link only wxbase and not link ui.o +and uibase.o. + +wxWidgets is mostly Windows people, they wouldn't know much about GTK. + +Don't you have an Ubuntu laptop you can test and compile on so you don't +have to toy with the vps? ++
> Don't you have an Ubuntu laptop you can test and compile on so you +> don't have to toy with the vps? + +Yes. Tested with Python's JSON-RPC, and seems to work fine! Really +easy to use. + ++
mmalmi@cc.hut.fi wrote: +>> Don't you have an Ubuntu laptop you can test and compile on so you +>> don't have to toy with the vps? +> +> Yes. Tested with Python's JSON-RPC, and seems to work fine! Really easy +> to use. + +Hurray, I got it on the first go. + +Could you send me the Python code you used? So if I do some testing +later I don't have to figure it out myself. ++
> mmalmi@cc.hut.fi wrote: +>>> Don't you have an Ubuntu laptop you can test and compile on so you +>>> don't have to toy with the vps? +>> +>> Yes. Tested with Python's JSON-RPC, and seems to work fine! Really +>> easy to use. +> +> Hurray, I got it on the first go. +> +> Could you send me the Python code you used? So if I do some testing +> later I don't have to figure it out myself. + +Just downloaded the python-json-rpc +(http://json-rpc.org/wiki/python-json-rpc) from their svn and tested +by talking to the Python interpreter directly. Like this: + +pythons = ServiceProxy("http://localhost:8332") +s.getblockcount() + ++
Just a few clues I've found about running the same binary without a GUI: + +1) GTK supports running a program without display: +http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check. This +doesn't tell if it's possible in wxWidgets though. + +2) wxAppConsole of wx 2.9 might be useful somehow. Just replacing +wxApp with wxAppConsole doesn't work, I'm not sure how it should be +used. It's not very well documented. + +3) Another option might be to use IMPLEMENT_APP_NO_MAIN() and make our +own main method. + ++
mmalmi@cc.hut.fi wrote: +> Just a few clues I've found about running the same binary without a GUI: +> +> 1) GTK supports running a program without display: +> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check. +> This doesn't tell if it's possible in wxWidgets though. + +I see it calls gtk-init-check in wxApp::Initialize. + +I can subclass Initialize, call the original one while suppressing the +error message and ignore the return value. It seems to be working. + +Any suggestions what to name the command line switches and how to +describe them? Is there any traditional standard? I'm currently using: +-daemon (or -d) (Enables RPC and runs in the background) +-server (Enables RPC) + ++
>> Just a few clues I've found about running the same binary without a GUI: +>> +>> 1) GTK supports running a program without display: +>> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check. +>> This doesn't tell if it's possible in wxWidgets though. +> +> I see it calls gtk-init-check in wxApp::Initialize. +> +> I can subclass Initialize, call the original one while suppressing the +> error message and ignore the return value. It seems to be working. + +This is working. A few more things and I'll upload it. + +We'll need to tell people to install the GTK libraries. Do you remember +the apt-get command to install GTK, and can you install it without +having a GUI installed? ++
> mmalmi@cc.hut.fi wrote: +>> Just a few clues I've found about running the same binary without a GUI: +>> +>> 1) GTK supports running a program without display: +>> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check. +>> This doesn't tell if it's possible in wxWidgets though. +> +> I see it calls gtk-init-check in wxApp::Initialize. +> +> I can subclass Initialize, call the original one while suppressing the +> error message and ignore the return value. It seems to be working. +> +> Any suggestions what to name the command line switches and how to +> describe them? Is there any traditional standard? I'm currently using: +> -daemon (or -d) (Enables RPC and runs in the background) +> -server (Enables RPC) + +That seems good, I don't know of any standards about it. + ++
>>> Just a few clues I've found about running the same binary without a GUI: +>>> +>>> 1) GTK supports running a program without display: +>>> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check. +>>> This doesn't tell if it's possible in wxWidgets though. +>> +>> I see it calls gtk-init-check in wxApp::Initialize. +>> +>> I can subclass Initialize, call the original one while suppressing +>> the error message and ignore the return value. It seems to be +>> working. +> +> This is working. A few more things and I'll upload it. +> +> We'll need to tell people to install the GTK libraries. Do you +> remember the apt-get command to install GTK, and can you install it +> without having a GUI installed? + +It was probably apt-get install libgtk2.0-0. You can search for +available packages like this: "apt-cache search libgtk". + +I'll give Drupal accounts to the bitcoin.org translators, so they can +keep the translations up to date. + ++
> I'll give Drupal accounts to the bitcoin.org translators, so they can +> keep the translations up to date. + +Good, that gives them a little sense of ownership and responsibility. + +I hope we get at least one .mo file for the software translation in time +to put into the 0.3 release. ++
I tried debugging my build of bitcoind with ddd debugger, but didn't +have much success yet. It always ends up taking all the system's +memory and finally crashes. Could you please send me again the latest +64 bit build of bitcoind, so I can see if the problem is about my build? + ++
I put it at bitcoin.org/download/linux64-0.2.7.1.tar.gz. You can delete +it when you've got it. + +I thought about what might cause the problem you're having and made a +change that this build includes. This might have been unsafe code, +although it would probably always get lucky. + +in util.cpp, old: +const char* wxGetTranslation(const char* pszEnglish) +{ + // Wrapper of wxGetTranslation returning the same const char* type +as was passed in + static CCriticalSection cs; + CRITICAL_BLOCK(cs) + { + // Look in cache + static map<string, char*> mapCache; + map<string, char*>::iterator mi = mapCache.find(pszEnglish); + if (mi != mapCache.end()) + return (*mi).second; + + // wxWidgets translation + const char* pszTranslated = +wxGetTranslation(wxString(pszEnglish, wxConvUTF8)).utf8_str(); + + // We don't cache unknown strings because caller might be +passing in a + // dynamic string and we would keep allocating memory for each +variation. + if (strcmp(pszEnglish, pszTranslated) == 0) + return pszEnglish; + + // Add to cache, memory doesn't need to be freed. We only +cache because + // we must pass back a pointer to permanently allocated memory. + char* pszCached = new char[strlen(pszTranslated)+1]; + strcpy(pszCached, pszTranslated); + mapCache[pszEnglish] = pszCached; + return pszCached; + } + return NULL; +} + +new: +const char* wxGetTranslation(const char* pszEnglish) +{ + // Wrapper of wxGetTranslation returning the same const char* type +as was passed in + static CCriticalSection cs; + CRITICAL_BLOCK(cs) + { + // Look in cache + static map<string, char*> mapCache; + map<string, char*>::iterator mi = mapCache.find(pszEnglish); + if (mi != mapCache.end()) + return (*mi).second; + + // wxWidgets translation + wxString strTranslated = wxGetTranslation(wxString(pszEnglish, +wxConvUTF8)); + + // We don't cache unknown strings because caller might be +passing in a + // dynamic string and we would keep allocating memory for each +variation. + if (strcmp(pszEnglish, strTranslated.utf8_str()) == 0) + return pszEnglish; + + // Add to cache, memory doesn't need to be freed. We only +cache because + // we must pass back a pointer to permanently allocated memory. + char* pszCached = new char[strlen(strTranslated.utf8_str())+1]; + strcpy(pszCached, strTranslated.utf8_str()); + mapCache[pszEnglish] = pszCached; + return pszCached; + } + return NULL; +} + +If you still suspect this code, for testing you could change it to: +const char* wxGetTranslation(const char* pszEnglish) +{ + return pszEnglish; +} + + +mmalmi@cc.hut.fi wrote: +> I tried debugging my build of bitcoind with ddd debugger, but didn't +> have much success yet. It always ends up taking all the system's memory +> and finally crashes. Could you please send me again the latest 64 bit +> build of bitcoind, so I can see if the problem is about my build? +> + ++
Could you send me the debug.log? + +mmalmi@cc.hut.fi wrote: +> I tried debugging my build of bitcoind with ddd debugger, but didn't +> have much success yet. It always ends up taking all the system's memory +> and finally crashes. Could you please send me again the latest 64 bit +> build of bitcoind, so I can see if the problem is about my build? +> + ++
Here goes. I forgot to mention the crash error message: + +terminate called after throwing an instance of 'std::bad_alloc' +what(): std::bad_alloc + +> Could you send me the debug.log? +> +> mmalmi@cc.hut.fi wrote: +>> I tried debugging my build of bitcoind with ddd debugger, but +>> didn't have much success yet. It always ends up taking all the +>> system's memory and finally crashes. Could you please send me again +>> the latest 64 bit build of bitcoind, so I can see if the problem +>> is about my build? +>> + + + ++
This was from the compilation you sent, the same problem occurred with it. + +> Here goes. I forgot to mention the crash error message: +> +> terminate called after throwing an instance of 'std::bad_alloc' +> what(): std::bad_alloc +> +>> Could you send me the debug.log? +>> +>> mmalmi@cc.hut.fi wrote: +>>> I tried debugging my build of bitcoind with ddd debugger, but +>>> didn't have much success yet. It always ends up taking all the +>>> system's memory and finally crashes. Could you please send me +>>> again the latest 64 bit build of bitcoind, so I can see if the +>>> problem is about my build? +>>> + + + ++
Does it still do it if you didn't do getinfo? + +You could comment out the CreateThreads listed below, then re-enable +them one at a time until it does it again. Then we would know which +thread the problem is in. + +net.cpp, under // Start threads + CreateThread(ThreadIRCSeed, NULL) + CreateThread(ThreadSocketHandler, NULL, true) + CreateThread(ThreadOpenConnections, NULL) + CreateThread(ThreadMessageHandler, NULL) + +init.cpp: + CreateThread(ThreadRPCServer, NULL); + +mmalmi@cc.hut.fi wrote: +> Here goes. I forgot to mention the crash error message: +> +> terminate called after throwing an instance of 'std::bad_alloc' +> what(): std::bad_alloc +> +>> Could you send me the debug.log? +>> +>> mmalmi@cc.hut.fi wrote: +>>> I tried debugging my build of bitcoind with ddd debugger, but didn't +>>> have much success yet. It always ends up taking all the system's +>>> memory and finally crashes. Could you please send me again the +>>> latest 64 bit build of bitcoind, so I can see if the problem is +>>> about my build? +>>> +> +> +> + ++
I get the error regardless of the getinfo. Commenting out +ThreadIRCSeed fixed the problem. + +> Does it still do it if you didn't do getinfo? +> +> You could comment out the CreateThreads listed below, then re-enable +> them one at a time until it does it again. Then we would know which +> thread the problem is in. +> +> net.cpp, under // Start threads +> CreateThread(ThreadIRCSeed, NULL) +> CreateThread(ThreadSocketHandler, NULL, true) +> CreateThread(ThreadOpenConnections, NULL) +> CreateThread(ThreadMessageHandler, NULL) +> +> init.cpp: +> CreateThread(ThreadRPCServer, NULL); +> +> mmalmi@cc.hut.fi wrote: +>> Here goes. I forgot to mention the crash error message: +>> +>> terminate called after throwing an instance of 'std::bad_alloc' +>> what(): std::bad_alloc +>> +>>> Could you send me the debug.log? +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>> didn't have much success yet. It always ends up taking all the +>>>> system's memory and finally crashes. Could you please send me +>>>> again the latest 64 bit build of bitcoind, so I can see if the +>>>> problem is about my build? +>>>> +>> +>> +>> + + + ++
That narrows it down a lot. It didn't print any IRC activity in +debug.log, so I guess it couldn't have gotten past the RecvUntil. +Eyeballing it I don't see anything obvious. I guess it would have to be +either in ConnectSocket or RecvUntil. + +Try it with the attached irc.cpp and net.cpp and send me the debug.log. + +Or you could run it in gdb and step through ThreadIRCSeed +gdb --args bitcoin [switches] +b ThreadIRCSeed +run +step +or u to step over and up out of routines. + +mmalmi@cc.hut.fi wrote: +> I get the error regardless of the getinfo. Commenting out ThreadIRCSeed +> fixed the problem. +> +>> Does it still do it if you didn't do getinfo? +>> +>> You could comment out the CreateThreads listed below, then re-enable +>> them one at a time until it does it again. Then we would know which +>> thread the problem is in. +>> +>> net.cpp, under // Start threads +>> CreateThread(ThreadIRCSeed, NULL) +>> CreateThread(ThreadSocketHandler, NULL, true) +>> CreateThread(ThreadOpenConnections, NULL) +>> CreateThread(ThreadMessageHandler, NULL) +>> +>> init.cpp: +>> CreateThread(ThreadRPCServer, NULL); +>> +>> mmalmi@cc.hut.fi wrote: +>>> Here goes. I forgot to mention the crash error message: +>>> +>>> terminate called after throwing an instance of 'std::bad_alloc' +>>> what(): std::bad_alloc +>>> +>>>> Could you send me the debug.log? +>>>> +>>>> mmalmi@cc.hut.fi wrote: +>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>> didn't have much success yet. It always ends up taking all the +>>>>> system's memory and finally crashes. Could you please send me +>>>>> again the latest 64 bit build of bitcoind, so I can see if the +>>>>> problem is about my build? +>>>>> +>>> +>>> +>>> +> +> +> + ++
debug.log attached + +> That narrows it down a lot. It didn't print any IRC activity in +> debug.log, so I guess it couldn't have gotten past the RecvUntil. +> Eyeballing it I don't see anything obvious. I guess it would have to +> be either in ConnectSocket or RecvUntil. +> +> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +> +> Or you could run it in gdb and step through ThreadIRCSeed +> gdb --args bitcoin [switches] +> b ThreadIRCSeed +> run +> step +> or u to step over and up out of routines. +> +> mmalmi@cc.hut.fi wrote: +>> I get the error regardless of the getinfo. Commenting out +>> ThreadIRCSeed fixed the problem. +>> +>>> Does it still do it if you didn't do getinfo? +>>> +>>> You could comment out the CreateThreads listed below, then re-enable +>>> them one at a time until it does it again. Then we would know which +>>> thread the problem is in. +>>> +>>> net.cpp, under // Start threads +>>> CreateThread(ThreadIRCSeed, NULL) +>>> CreateThread(ThreadSocketHandler, NULL, true) +>>> CreateThread(ThreadOpenConnections, NULL) +>>> CreateThread(ThreadMessageHandler, NULL) +>>> +>>> init.cpp: +>>> CreateThread(ThreadRPCServer, NULL); +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> Here goes. I forgot to mention the crash error message: +>>>> +>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>> what(): std::bad_alloc +>>>> +>>>>> Could you send me the debug.log? +>>>>> +>>>>> mmalmi@cc.hut.fi wrote: +>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>> didn't have much success yet. It always ends up taking all the +>>>>>> system's memory and finally crashes. Could you please send +>>>>>> me again the latest 64 bit build of bitcoind, so I can see +>>>>>> if the problem is about my build? +>>>>>> +>>>> +>>>> +>>>> +>> +>> +>> + + + ++
It's in RecvUntil, but I still can't see anything wrong with it. The +only thing I can think of is if the socket is receiving a spew of +characters. + +Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. + +mmalmi@cc.hut.fi wrote: +> debug.log attached +> +>> That narrows it down a lot. It didn't print any IRC activity in +>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>> Eyeballing it I don't see anything obvious. I guess it would have to +>> be either in ConnectSocket or RecvUntil. +>> +>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>> +>> Or you could run it in gdb and step through ThreadIRCSeed +>> gdb --args bitcoin [switches] +>> b ThreadIRCSeed +>> run +>> step +>> or u to step over and up out of routines. +>> +>> mmalmi@cc.hut.fi wrote: +>>> I get the error regardless of the getinfo. Commenting out +>>> ThreadIRCSeed fixed the problem. +>>> +>>>> Does it still do it if you didn't do getinfo? +>>>> +>>>> You could comment out the CreateThreads listed below, then re-enable +>>>> them one at a time until it does it again. Then we would know which +>>>> thread the problem is in. +>>>> +>>>> net.cpp, under // Start threads +>>>> CreateThread(ThreadIRCSeed, NULL) +>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>> CreateThread(ThreadOpenConnections, NULL) +>>>> CreateThread(ThreadMessageHandler, NULL) +>>>> +>>>> init.cpp: +>>>> CreateThread(ThreadRPCServer, NULL); +>>>> +>>>> mmalmi@cc.hut.fi wrote: +>>>>> Here goes. I forgot to mention the crash error message: +>>>>> +>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>> what(): std::bad_alloc +>>>>> +>>>>>> Could you send me the debug.log? +>>>>>> +>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>> didn't have much success yet. It always ends up taking all the +>>>>>>> system's memory and finally crashes. Could you please send +>>>>>>> me again the latest 64 bit build of bitcoind, so I can see if +>>>>>>> the problem is about my build? +>>>>>>> +>>>>> +>>>>> +>>>>> +>>> +>>> +>>> +> +> +> + ++
Here's the debug.log. I stopped bitcoind before it took up all the memory. + +> It's in RecvUntil, but I still can't see anything wrong with it. The +> only thing I can think of is if the socket is receiving a spew of +> characters. +> +> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +> +> mmalmi@cc.hut.fi wrote: +>> debug.log attached +>> +>>> That narrows it down a lot. It didn't print any IRC activity in +>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>> be either in ConnectSocket or RecvUntil. +>>> +>>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>>> +>>> Or you could run it in gdb and step through ThreadIRCSeed +>>> gdb --args bitcoin [switches] +>>> b ThreadIRCSeed +>>> run +>>> step +>>> or u to step over and up out of routines. +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> I get the error regardless of the getinfo. Commenting out +>>>> ThreadIRCSeed fixed the problem. +>>>> +>>>>> Does it still do it if you didn't do getinfo? +>>>>> +>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>> them one at a time until it does it again. Then we would know which +>>>>> thread the problem is in. +>>>>> +>>>>> net.cpp, under // Start threads +>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>> +>>>>> init.cpp: +>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>> +>>>>> mmalmi@cc.hut.fi wrote: +>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>> +>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>> what(): std::bad_alloc +>>>>>> +>>>>>>> Could you send me the debug.log? +>>>>>>> +>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>>> didn't have much success yet. It always ends up taking +>>>>>>>> all the system's memory and finally crashes. Could you +>>>>>>>> please send me again the latest 64 bit build of bitcoind, +>>>>>>>> so I can see if the problem is about my build? +>>>>>>>> +>>>>>> +>>>>>> +>>>>>> +>>>> +>>>> +>>>> +>> +>> +>> + + + ++
Here's another test run debug.log I got when debugging with gdb. The +program started eating memory after the debug line "irc 8" and within +a few seconds crashed with "terminate called after throwing an +instance of 'std::bad_alloc'". + +> It's in RecvUntil, but I still can't see anything wrong with it. The +> only thing I can think of is if the socket is receiving a spew of +> characters. +> +> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +> +> mmalmi@cc.hut.fi wrote: +>> debug.log attached +>> +>>> That narrows it down a lot. It didn't print any IRC activity in +>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>> be either in ConnectSocket or RecvUntil. +>>> +>>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>>> +>>> Or you could run it in gdb and step through ThreadIRCSeed +>>> gdb --args bitcoin [switches] +>>> b ThreadIRCSeed +>>> run +>>> step +>>> or u to step over and up out of routines. +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> I get the error regardless of the getinfo. Commenting out +>>>> ThreadIRCSeed fixed the problem. +>>>> +>>>>> Does it still do it if you didn't do getinfo? +>>>>> +>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>> them one at a time until it does it again. Then we would know which +>>>>> thread the problem is in. +>>>>> +>>>>> net.cpp, under // Start threads +>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>> +>>>>> init.cpp: +>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>> +>>>>> mmalmi@cc.hut.fi wrote: +>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>> +>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>> what(): std::bad_alloc +>>>>>> +>>>>>>> Could you send me the debug.log? +>>>>>>> +>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>>> didn't have much success yet. It always ends up taking +>>>>>>>> all the system's memory and finally crashes. Could you +>>>>>>>> please send me again the latest 64 bit build of bitcoind, +>>>>>>>> so I can see if the problem is about my build? +>>>>>>>> +>>>>>> +>>>>>> +>>>>>> +>>>> +>>>> +>>>> +>> +>> +>> + + + ++
It's in util.c ParseString. I'm guessing the problem is incompatibility +between the type "unsigned int" and the type of str.npos, which is +size_type. + +Try changing the two "unsigned int"s to "size_type". + +old: +void ParseString(const string& str, char c, vector<string>& v) +{ + unsigned int i1 = 0; + unsigned int i2; + do + { + i2 = str.find(c, i1); + v.push_back(str.substr(i1, i2-i1)); + i1 = i2+1; + } + while (i2 != str.npos); +} + +new: +void ParseString(const string& str, char c, vector<string>& v) +{ + size_type i1 = 0; + size_type i2; + do + { + i2 = str.find(c, i1); + v.push_back(str.substr(i1, i2-i1)); + i1 = i2+1; + } + while (i2 != str.npos); +} + + +mmalmi@cc.hut.fi wrote: +> Here's another test run debug.log I got when debugging with gdb. The +> program started eating memory after the debug line "irc 8" and within a +> few seconds crashed with "terminate called after throwing an instance of +> 'std::bad_alloc'". +> +>> It's in RecvUntil, but I still can't see anything wrong with it. The +>> only thing I can think of is if the socket is receiving a spew of +>> characters. +>> +>> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +>> +>> mmalmi@cc.hut.fi wrote: +>>> debug.log attached +>>> +>>>> That narrows it down a lot. It didn't print any IRC activity in +>>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>>> be either in ConnectSocket or RecvUntil. +>>>> +>>>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>>>> +>>>> Or you could run it in gdb and step through ThreadIRCSeed +>>>> gdb --args bitcoin [switches] +>>>> b ThreadIRCSeed +>>>> run +>>>> step +>>>> or u to step over and up out of routines. +>>>> +>>>> mmalmi@cc.hut.fi wrote: +>>>>> I get the error regardless of the getinfo. Commenting out +>>>>> ThreadIRCSeed fixed the problem. +>>>>> +>>>>>> Does it still do it if you didn't do getinfo? +>>>>>> +>>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>>> them one at a time until it does it again. Then we would know which +>>>>>> thread the problem is in. +>>>>>> +>>>>>> net.cpp, under // Start threads +>>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>>> +>>>>>> init.cpp: +>>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>>> +>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>>> +>>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>>> what(): std::bad_alloc +>>>>>>> +>>>>>>>> Could you send me the debug.log? +>>>>>>>> +>>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>>>> didn't have much success yet. It always ends up taking all +>>>>>>>>> the system's memory and finally crashes. Could you please +>>>>>>>>> send me again the latest 64 bit build of bitcoind, so I can +>>>>>>>>> see if the problem is about my build? +>>>>>>>>> +>>>>>>> +>>>>>>> +>>>>>>> +>>>>> +>>>>> +>>>>> +>>> +>>> +>>> +> +> +> + ++
Actually, please try this instead, this is more correct: + +void ParseString(const string& str, char c, vector<string>& v) +{ + string::size_type i1 = 0; + string::size_type i2; + loop + { + i2 = str.find(c, i1); + if (i2 == str.npos) + { + v.push_back(str.substr(i1)); + return; + } + v.push_back(str.substr(i1, i2-i1)); + i1 = i2+1; + } +} + + + +Satoshi Nakamoto wrote: +> It's in util.c ParseString. I'm guessing the problem is incompatibility +> between the type "unsigned int" and the type of str.npos, which is +> size_type. +> +> Try changing the two "unsigned int"s to "size_type". +> +> old: +> void ParseString(const string& str, char c, vector<string>& v) +> { +> unsigned int i1 = 0; +> unsigned int i2; +> do +> { +> i2 = str.find(c, i1); +> v.push_back(str.substr(i1, i2-i1)); +> i1 = i2+1; +> } +> while (i2 != str.npos); +> } +> +> new: +> void ParseString(const string& str, char c, vector<string>& v) +> { +> size_type i1 = 0; +> size_type i2; +> do +> { +> i2 = str.find(c, i1); +> v.push_back(str.substr(i1, i2-i1)); +> i1 = i2+1; +> } +> while (i2 != str.npos); +> } +> +> +> mmalmi@cc.hut.fi wrote: +>> Here's another test run debug.log I got when debugging with gdb. The +>> program started eating memory after the debug line "irc 8" and within +>> a few seconds crashed with "terminate called after throwing an +>> instance of 'std::bad_alloc'". +>> +>>> It's in RecvUntil, but I still can't see anything wrong with it. The +>>> only thing I can think of is if the socket is receiving a spew of +>>> characters. +>>> +>>> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +>>> +>>> mmalmi@cc.hut.fi wrote: +>>>> debug.log attached +>>>> +>>>>> That narrows it down a lot. It didn't print any IRC activity in +>>>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>>>> be either in ConnectSocket or RecvUntil. +>>>>> +>>>>> Try it with the attached irc.cpp and net.cpp and send me the +>>>>> debug.log. +>>>>> +>>>>> Or you could run it in gdb and step through ThreadIRCSeed +>>>>> gdb --args bitcoin [switches] +>>>>> b ThreadIRCSeed +>>>>> run +>>>>> step +>>>>> or u to step over and up out of routines. +>>>>> +>>>>> mmalmi@cc.hut.fi wrote: +>>>>>> I get the error regardless of the getinfo. Commenting out +>>>>>> ThreadIRCSeed fixed the problem. +>>>>>> +>>>>>>> Does it still do it if you didn't do getinfo? +>>>>>>> +>>>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>>>> them one at a time until it does it again. Then we would know which +>>>>>>> thread the problem is in. +>>>>>>> +>>>>>>> net.cpp, under // Start threads +>>>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>>>> +>>>>>>> init.cpp: +>>>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>>>> +>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>>>> +>>>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>>>> what(): std::bad_alloc +>>>>>>>> +>>>>>>>>> Could you send me the debug.log? +>>>>>>>>> +>>>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>>>>> didn't have much success yet. It always ends up taking +>>>>>>>>>> all the system's memory and finally crashes. Could you +>>>>>>>>>> please send me again the latest 64 bit build of bitcoind, +>>>>>>>>>> so I can see if the problem is about my build? +>>>>>>>>>> +>>>>>>>> +>>>>>>>> +>>>>>>>> +>>>>>> +>>>>>> +>>>>>> +>>>> +>>>> +>>>> +>> +>> +>> +> +> + ++
Great! Works fine now. + +> Actually, please try this instead, this is more correct: +> +> void ParseString(const string& str, char c, vector<string>& v) +> { +> string::size_type i1 = 0; +> string::size_type i2; +> loop +> { +> i2 = str.find(c, i1); +> if (i2 == str.npos) +> { +> v.push_back(str.substr(i1)); +> return; +> } +> v.push_back(str.substr(i1, i2-i1)); +> i1 = i2+1; +> } +> } +> +> +> +> Satoshi Nakamoto wrote: +>> It's in util.c ParseString. I'm guessing the problem is +>> incompatibility between the type "unsigned int" and the type of +>> str.npos, which is size_type. +>> +>> Try changing the two "unsigned int"s to "size_type". +>> +>> old: +>> void ParseString(const string& str, char c, vector<string>& v) +>> { +>> unsigned int i1 = 0; +>> unsigned int i2; +>> do +>> { +>> i2 = str.find(c, i1); +>> v.push_back(str.substr(i1, i2-i1)); +>> i1 = i2+1; +>> } +>> while (i2 != str.npos); +>> } +>> +>> new: +>> void ParseString(const string& str, char c, vector<string>& v) +>> { +>> size_type i1 = 0; +>> size_type i2; +>> do +>> { +>> i2 = str.find(c, i1); +>> v.push_back(str.substr(i1, i2-i1)); +>> i1 = i2+1; +>> } +>> while (i2 != str.npos); +>> } +>> +>> +>> mmalmi@cc.hut.fi wrote: +>>> Here's another test run debug.log I got when debugging with gdb. +>>> The program started eating memory after the debug line "irc 8" and +>>> within a few seconds crashed with "terminate called after +>>> throwing an instance of 'std::bad_alloc'". +>>> +>>>> It's in RecvUntil, but I still can't see anything wrong with it. The +>>>> only thing I can think of is if the socket is receiving a spew of +>>>> characters. +>>>> +>>>> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +>>>> +>>>> mmalmi@cc.hut.fi wrote: +>>>>> debug.log attached +>>>>> +>>>>>> That narrows it down a lot. It didn't print any IRC activity in +>>>>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>>>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>>>>> be either in ConnectSocket or RecvUntil. +>>>>>> +>>>>>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>>>>>> +>>>>>> Or you could run it in gdb and step through ThreadIRCSeed +>>>>>> gdb --args bitcoin [switches] +>>>>>> b ThreadIRCSeed +>>>>>> run +>>>>>> step +>>>>>> or u to step over and up out of routines. +>>>>>> +>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>> I get the error regardless of the getinfo. Commenting out +>>>>>>> ThreadIRCSeed fixed the problem. +>>>>>>> +>>>>>>>> Does it still do it if you didn't do getinfo? +>>>>>>>> +>>>>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>>>>> them one at a time until it does it again. Then we would know which +>>>>>>>> thread the problem is in. +>>>>>>>> +>>>>>>>> net.cpp, under // Start threads +>>>>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>>>>> +>>>>>>>> init.cpp: +>>>>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>>>>> +>>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>>>>> +>>>>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>>>>> what(): std::bad_alloc +>>>>>>>>> +>>>>>>>>>> Could you send me the debug.log? +>>>>>>>>>> +>>>>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, +>>>>>>>>>>> but didn't have much success yet. It always ends up +>>>>>>>>>>> taking all the system's memory and finally crashes. +>>>>>>>>>>> Could you please send me again the latest 64 bit build +>>>>>>>>>>> of bitcoind, so I can see if the problem is about my +>>>>>>>>>>> build? +>>>>>>>>>>> +>>>>>>>>> +>>>>>>>>> +>>>>>>>>> +>>>>>>> +>>>>>>> +>>>>>>> +>>>>> +>>>>> +>>>>> +>>> +>>> +>>> +>> +>> + + + ++
I confirmed that ParseString has this problem, and uploaded the fixed +util.cpp to SVN. + +string::npos == -1 + +Comparing unsigned int -1 (0xffffffff) with long unsigned int -1 +(0xffffffffffffffff) results in the unsigned int being promoted to +64-bit, which is 0x00000000ffffffff != 0xffffffffffffffff. + +mmalmi@cc.hut.fi wrote: +> Here's another test run debug.log I got when debugging with gdb. The +> program started eating memory after the debug line "irc 8" and within a +> few seconds crashed with "terminate called after throwing an instance of +> 'std::bad_alloc'". +> +>> It's in RecvUntil, but I still can't see anything wrong with it. The +>> only thing I can think of is if the socket is receiving a spew of +>> characters. +>> +>> Try this irc.cpp. debug.log may grow rapidly so be ready to kill it. +>> +>> mmalmi@cc.hut.fi wrote: +>>> debug.log attached +>>> +>>>> That narrows it down a lot. It didn't print any IRC activity in +>>>> debug.log, so I guess it couldn't have gotten past the RecvUntil. +>>>> Eyeballing it I don't see anything obvious. I guess it would have to +>>>> be either in ConnectSocket or RecvUntil. +>>>> +>>>> Try it with the attached irc.cpp and net.cpp and send me the debug.log. +>>>> +>>>> Or you could run it in gdb and step through ThreadIRCSeed +>>>> gdb --args bitcoin [switches] +>>>> b ThreadIRCSeed +>>>> run +>>>> step +>>>> or u to step over and up out of routines. +>>>> +>>>> mmalmi@cc.hut.fi wrote: +>>>>> I get the error regardless of the getinfo. Commenting out +>>>>> ThreadIRCSeed fixed the problem. +>>>>> +>>>>>> Does it still do it if you didn't do getinfo? +>>>>>> +>>>>>> You could comment out the CreateThreads listed below, then re-enable +>>>>>> them one at a time until it does it again. Then we would know which +>>>>>> thread the problem is in. +>>>>>> +>>>>>> net.cpp, under // Start threads +>>>>>> CreateThread(ThreadIRCSeed, NULL) +>>>>>> CreateThread(ThreadSocketHandler, NULL, true) +>>>>>> CreateThread(ThreadOpenConnections, NULL) +>>>>>> CreateThread(ThreadMessageHandler, NULL) +>>>>>> +>>>>>> init.cpp: +>>>>>> CreateThread(ThreadRPCServer, NULL); +>>>>>> +>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>> Here goes. I forgot to mention the crash error message: +>>>>>>> +>>>>>>> terminate called after throwing an instance of 'std::bad_alloc' +>>>>>>> what(): std::bad_alloc +>>>>>>> +>>>>>>>> Could you send me the debug.log? +>>>>>>>> +>>>>>>>> mmalmi@cc.hut.fi wrote: +>>>>>>>>> I tried debugging my build of bitcoind with ddd debugger, but +>>>>>>>>> didn't have much success yet. It always ends up taking all +>>>>>>>>> the system's memory and finally crashes. Could you please +>>>>>>>>> send me again the latest 64 bit build of bitcoind, so I can +>>>>>>>>> see if the problem is about my build? +>>>>>>>>> +>>>>>>> +>>>>>>> +>>>>>>> +>>>>> +>>>>> +>>>>> +>>> +>>> +>>> +> +> +> + ++
There's a blog writer who wants to write a story about Bitcoin, but I +don't have time right now to answer his questions. Would you be +interested in answering his questions if I refer him to you? We might +get a good link out of it. + +The blog is +http://themonetaryfuture.blogspot.com ++
Yes, I could do that. + +> There's a blog writer who wants to write a story about Bitcoin, but I +> don't have time right now to answer his questions. Would you be +> interested in answering his questions if I refer him to you? We might +> get a good link out of it. +> +> The blog is +> http://themonetaryfuture.blogspot.com + + + ++
Hi! + +How are you doing? Haven't seen you around in a while. + +I've been at full-time work lately, and will be until the end of June, +so I haven't had that much time to work with Bitcoin or my exchange +service. I have a working beta of my service though, and a few weeks +ago made my first transaction: sold 10,000 btc for 20 euros via EU +bank transfer. Maybe I can make it public soon. + +I divided the forum into 6 boards, which are Bitcoin Discussion, +Development & Technical Discussion, Technical support, Economics, +Marketplace and Trading Discussion. Hope this is ok? + +I also added a page "Trade" on the bitcoin.org site, where +btc-accepting services are listed. It's nice to see that there are +already useful services that accept btc. + +The community has been growing nicely. We've had around 10-20 people +and active discussion at #bitcoin-dev lately. + +It would be nice to get the daemon-able binaries to SF.net. We have +some skilled programmers in the community now, so maybe we can finish +the JSON API functions if you don't have time to. + +Best regards. + ++
I've also been busy with other things for the last month and a half. I +just now downloaded my e-mail since the beginning of April. I mostly +have things sorted and should be back to Bitcoin shortly. Glad that +you've been handling things in my absence. Congrats on your first +transaction! + +As I recall, the code was nearly ready for a 0.3 release. I think all +it needed was a little testing time and to install the new icon xpm. + +The JSON API functions are complete. I wanted to take another fresh +look at them in case I think of any better function names before +committing. I ought to write some sample code showing the proper way to +use them, particularly with polling for received transactions. When I +left off, I was thinking about bolting a payment mechanism onto a free +upload server software as an example. It would make sense to actually +build one practical application with the API before releasing it. You +don't realise the problems with an API until you actually try to use it. + +mmalmi@cc.hut.fi wrote: +> Hi! +> +> How are you doing? Haven't seen you around in a while. +> +> I've been at full-time work lately, and will be until the end of June, +> so I haven't had that much time to work with Bitcoin or my exchange +> service. I have a working beta of my service though, and a few weeks ago +> made my first transaction: sold 10,000 btc for 20 euros via EU bank +> transfer. Maybe I can make it public soon. +> +> I divided the forum into 6 boards, which are Bitcoin Discussion, +> Development & Technical Discussion, Technical support, Economics, +> Marketplace and Trading Discussion. Hope this is ok? +> +> I also added a page "Trade" on the bitcoin.org site, where btc-accepting +> services are listed. It's nice to see that there are already useful +> services that accept btc. +> +> The community has been growing nicely. We've had around 10-20 people and +> active discussion at #bitcoin-dev lately. +> +> It would be nice to get the daemon-able binaries to SF.net. We have some +> skilled programmers in the community now, so maybe we can finish the +> JSON API functions if you don't have time to. +> +> Best regards. +> + ++
If bandwidth is a problem, delete my link in the "0.3 almost ready" +thread. I just don't want to upload it to sourceforge for a quickie +share for a day or two, possibly taking it down immediately if there's a +bug. Sourceforge has a policy of not allowing removal of files once +they're added, and it's a pain to upload to. I'll delete the file once +the release is ready. + +BTW, it's looking like I may be able to get us some money soon to cover +web host costs, back your exchange service, etc, in the form of cash in +the mail. Can you receive it and act as the project's treasurer? ++
> If bandwidth is a problem, delete my link in the "0.3 almost ready" +> thread. I just don't want to upload it to sourceforge for a quickie +> share for a day or two, possibly taking it down immediately if there's +> a bug. Sourceforge has a policy of not allowing removal of files once +> they're added, and it's a pain to upload to. I'll delete the file once +> the release is ready. + +Ok, I'll monitor it. Bandwidth hasn't been a problem so far - it's +been about 2 GB (0.5 dollars) per month at most. Other costs are about +15$ a month. + +> BTW, it's looking like I may be able to get us some money soon to cover +> web host costs, back your exchange service, etc, in the form of cash in +> the mail. Can you receive it and act as the project's treasurer? + +That would be nice, I can do it. Sending cash in the mail may have its +risks, but maybe it's still the best anonymous option. We can also ask +for donations in BTC on the forum. + ++
>> BTW, it's looking like I may be able to get us some money soon to cover +>> web host costs, back your exchange service, etc, in the form of cash in +>> the mail. Can you receive it and act as the project's treasurer? +> +> That would be nice, I can do it. Sending cash in the mail may have its +> risks, but maybe it's still the best anonymous option. We can also ask +> for donations in BTC on the forum. + +I got a donation offer for $2000 USD. I need to get your postal mailing +address to have him send to. And yes, he wants to remain anonymous, so +please keep the envelope's origin private. ++
You can give this address: + +Martti Malmi +Visakoivunkuja 15 F 42 +02130 Espoo +Finland + +>>> BTW, it's looking like I may be able to get us some money soon to cover +>>> web host costs, back your exchange service, etc, in the form of cash in +>>> the mail. Can you receive it and act as the project's treasurer? +>> +>> That would be nice, I can do it. Sending cash in the mail may have +>> its risks, but maybe it's still the best anonymous option. We can +>> also ask for donations in BTC on the forum. +> +> I got a donation offer for $2000 USD. I need to get your postal +> mailing address to have him send to. And yes, he wants to remain +> anonymous, so please keep the envelope's origin private. + + + ++
I think we should de-emphasize the anonymous angle. With the popularity +of bitcoin addresses instead of sending by IP, we can't give the +impression it's automatically anonymous. It's possible to be +pseudonymous, but you have to be careful. If someone digs through the +transaction history and starts exposing information people thought was +anonymous, the backlash will be much worse if we haven't prepared +expectations by warning in advance that you have to take precautions if +you really want to make that work. Like Tor says, "Tor does not +magically encrypt all of your Internet activities. Understand what Tor +does and does not do for you." + +Also, anonymous sounds a bit shady. I think the people who want +anonymous will still figure it out without us trumpeting it. + +I made some changes to the bitcoin.org homepage. It's not really +crucial to update the translations. I tend to keep editing and +correcting for some time afterwards, so if they want to update, they +should wait. + +I removed the word "anonymous", and the sentence about "anonymity +means", although you worded it so carefully "...CAN be kept hidden..." +it was a shame to remove it. + +Instead, I added Tor instructions at the bottom, with instructions for +how to stay anonymous (pseudonymous) directly after the Tor +instructions: "If you want to remain anonymous (pseudonymous, really), +be careful not to reveal any information linking your bitcoin addresses +to your identity, and use a new bitcoin address for each payment you +receive." + +It helps that it can now seed automatically through Tor. + +Even though it doesn't say anonymous until the bottom, I think anonymous +seekers would already suspect it based on all the other attributes like +no central authority to take your ID info and the way bitcoin addresses +look. + + + ++
I uploaded 0.3.0 beta to sourceforge and updated the links on +bitcoin.org. I still need to post the announcement message on the forum +and mailing list. Here's what I've prepared: + +Announcing version 0.3 of Bitcoin, the P2P cryptocurrency! Bitcoin is a +digital currency using cryptography and a distributed network to replace +the need for a trusted central server. Escape the arbitrary inflation +risk of centrally managed currencies! Bitcoin's total circulation is +limited to 21 million coins. The coins are gradually being released to +the networks nodes based on the CPU power they contribute. You can get +a share of them just by installing the software and contributing your +idle CPU time. + +What's new: +- Command line and JSON-RPC control +- Includes a daemon version without GUI +- Tabs for sent and received transactions +- 20% faster hashing +- Hashmeter performance display +- Mac OS X version (thanks to Laszlo) +- German, Dutch and Italian translations (thanks to DataWraith, Xunie +and Joozero) ++
Actually, "tabs for sent and received transactions" sounds really +immature if it doesn't have that already. "Transaction filter tabs" +sounds better. + +I'm still editing it a little more and then I'll e-mail it to +bitcoin-list and send it to the cryptography list. + +"Get it at http://www.bitcoin.org or read the forum to find out more." + +Satoshi Nakamoto wrote: +> I uploaded 0.3.0 beta to sourceforge and updated the links on +> bitcoin.org. I still need to post the announcement message on the forum +> and mailing list. Here's what I've prepared: +> +> Announcing version 0.3 of Bitcoin, the P2P cryptocurrency! Bitcoin is a +> digital currency using cryptography and a distributed network to replace +> the need for a trusted central server. Escape the arbitrary inflation +> risk of centrally managed currencies! Bitcoin's total circulation is +> limited to 21 million coins. The coins are gradually being released to +> the networks nodes based on the CPU power they contribute. You can get +> a share of them just by installing the software and contributing your +> idle CPU time. +> +> What's new: +> - Command line and JSON-RPC control +> - Includes a daemon version without GUI +> - Tabs for sent and received transactions +> - 20% faster hashing +> - Hashmeter performance display +> - Mac OS X version (thanks to Laszlo) +> - German, Dutch and Italian translations (thanks to DataWraith, Xunie +> and Joozero) +> + ++
Announcing version 0.3 of Bitcoin, the P2P cryptocurrency! Bitcoin is a +digital currency using cryptography and a distributed network to replace +the need for a trusted central server. Escape the arbitrary inflation +risk of centrally managed currencies! Bitcoin's total circulation is +limited to 21 million coins. The coins are gradually released to the +network's nodes based on the CPU power they contribute, so you can get a +share of them by contributing your idle CPU time. + +What's new: +- Command line and JSON-RPC control +- Includes a daemon version without GUI +- Transaction filter tabs +- 20% faster hashing +- Hashmeter performance display +- Mac OS X version (thanks to Laszlo) +- German, Dutch and Italian translations (thanks to DataWraith, Xunie +and Joozero) + +Get it at www.bitcoin.org, and read the forum to find out more. + + +------------------------------------------------------------------------------ +This SF.net email is sponsored by Sprint +What will you do first with EVO, the first 4G phone? +Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
Ok, that sounds reasonable. + +> I think we should de-emphasize the anonymous angle. With the +> popularity of bitcoin addresses instead of sending by IP, we can't give +> the impression it's automatically anonymous. It's possible to be +> pseudonymous, but you have to be careful. If someone digs through the +> transaction history and starts exposing information people thought was +> anonymous, the backlash will be much worse if we haven't prepared +> expectations by warning in advance that you have to take precautions if +> you really want to make that work. Like Tor says, "Tor does not +> magically encrypt all of your Internet activities. Understand what Tor +> does and does not do for you." +> +> Also, anonymous sounds a bit shady. I think the people who want +> anonymous will still figure it out without us trumpeting it. +> +> I made some changes to the bitcoin.org homepage. It's not really +> crucial to update the translations. I tend to keep editing and +> correcting for some time afterwards, so if they want to update, they +> should wait. +> +> I removed the word "anonymous", and the sentence about "anonymity +> means", although you worded it so carefully "...CAN be kept hidden..." +> it was a shame to remove it. +> +> Instead, I added Tor instructions at the bottom, with instructions for +> how to stay anonymous (pseudonymous) directly after the Tor +> instructions: "If you want to remain anonymous (pseudonymous, really), +> be careful not to reveal any information linking your bitcoin addresses +> to your identity, and use a new bitcoin address for each payment you +> receive." +> +> It helps that it can now seed automatically through Tor. +> +> Even though it doesn't say anonymous until the bottom, I think +> anonymous seekers would already suspect it based on all the other +> attributes like no central authority to take your ID info and the way +> bitcoin addresses look. + + + ++
I see the interior pages of the old sourceforge wiki are still up, +though the homepage forwards. + + +-------- Original Message -------- +Subject: Re: bitcoin!!!! +Date: Wed, 14 Jul 2010 10:56:21 -0400 +From: Sam <samm@sammaloney.com> +To: Satoshi Nakamoto <satoshin@gmx.com> +References: <201004111508.52168.samm@sammaloney.com> +<201007111859.29171.samm@sammaloney.com> <4C3DCD97.8030003@gmx.com> + +It was an old FAQ on sourceforge that had been linked from slashdot (on a +highly visible comment). people were going there because bitcoin.org was +down +for a while. + +http://bitcoin.sourceforge.net/wiki/index.php?page=FAQ + +Probably not an issue anymore, but might be a good idea to delete or update +that wiki page. + +> I don't see any 0.1.5 download links on the FAQ. Do you mean +> bitcoin.org/faq? Is it on one of the other languages? Or maybe someone +> else fixed it already. +> +> > Anyways, I write to you now to let you know you must update the FAQ +> > immediately. It points to 0.15 of bitcoin for download. You must update +> > it to 0.30, as it is slashdotted! +> + ++
Is it possible for the translators (at least the more trusted ones) to +have user accounts on drupal so they can update their translated text +directly? The user accounts on drupal appear to be pretty weak. I +created a satoshi account and it can't even edit the side bar stuff, +just the main text of pages. I don't think user accounts can access any +of the admin stuff. Do you think it's safe, or do you feel insecure +about doing that? If you're worried, maybe there's a way to lock just +the english version of the homepage. + +It would be nice if when I need to make changes to the homepage, I could +enlist someone like Xunie to do the rote work of reflecting it to all +the translations instead of having to do all that work myself. (many +light changes don't require understanding the language to fix the +translated pages) ++
+-------- Original Message -------- +Subject: Please update the bitcoin FAQ so new member can have the right +info +Date: Mon, 12 Jul 2010 14:13:20 -0700 +From: Jim Nguyen <jimmy.winn@gmail.com> +To: satoshin@gmx.com + + + +Hi, + +In the FAQ of bitcoin.org <http://bitcoin.org> the backing up of the +wallet had old instructions, right? Should it just be to back up +wallat.dat instead of the entire folder??? See below. + + +"How do I backup my wallet? + +Your data is stored in the directory ''%appdata%\Bitcoin'', which is +typically: + + Windows XP: + C:\Documents and Settings\username\Application Data\Bitcoin + Windows Vista: + C:\Users\username\AppData\Roaming\Bitcoin + +It’s recommended that you stop Bitcoin before backing it up to make sure +the backup will be correct." + ++
You did some research when choosing hosting, this was a well chosen one, +right? It seems like it would be a tremendous hassle to change, and +we've had good luck with this one. Cheaper will usually have some +offsetting drawback in quality. + +I wonder if that extra memory is just disk cache or something. + +I take it you haven't received anything from that donor yet? He seemed +pretty certain he was going to send it, maybe more. (if you get +anything, we need to keep private for him the fact that we got a donation) ++
Yes, we could give accounts to trusted translators. I haven't found a +way to give them edit permissions to only one page, but they can be +forced to create a new revision with every page change they make, and +not be allowed to delete revisions. Xunie would be the first on the +list I'd give an account. :) + +> Is it possible for the translators (at least the more trusted ones) to +> have user accounts on drupal so they can update their translated text +> directly? The user accounts on drupal appear to be pretty weak. I +> created a satoshi account and it can't even edit the side bar stuff, +> just the main text of pages. I don't think user accounts can access +> any of the admin stuff. Do you think it's safe, or do you feel +> insecure about doing that? If you're worried, maybe there's a way to +> lock just the english version of the homepage. +> +> It would be nice if when I need to make changes to the homepage, I +> could enlist someone like Xunie to do the rote work of reflecting it to +> all the translations instead of having to do all that work myself. +> (many light changes don't require understanding the language to fix the +> translated pages) + + + ++
Relocated the old site to /oldsite, now there's only the redirection. + +> I see the interior pages of the old sourceforge wiki are still up, +> though the homepage forwards. +> +> +> -------- Original Message -------- +> Subject: Re: bitcoin!!!! +> Date: Wed, 14 Jul 2010 10:56:21 -0400 +> From: Sam <samm@sammaloney.com> +> To: Satoshi Nakamoto <satoshin@gmx.com> +> References: <201004111508.52168.samm@sammaloney.com> +> <201007111859.29171.samm@sammaloney.com> <4C3DCD97.8030003@gmx.com> +> +> It was an old FAQ on sourceforge that had been linked from slashdot (on a +> highly visible comment). people were going there because bitcoin.org was down +> for a while. +> +> http://bitcoin.sourceforge.net/wiki/index.php?page=FAQ +> +> Probably not an issue anymore, but might be a good idea to delete or update +> that wiki page. +> +>> I don't see any 0.1.5 download links on the FAQ. Do you mean +>> bitcoin.org/faq? Is it on one of the other languages? Or maybe someone +>> else fixed it already. +>> +>>> Anyways, I write to you now to let you know you must update the FAQ +>>> immediately. It points to 0.15 of bitcoin for download. You must update +>>> it to 0.30, as it is slashdotted! +>> + + + ++
Rackspace has very good support, good backend, good connections and +nicely scaling cloud based virtual servers. I got this offer from +Thufir: + +----- +Hi Sirius, + +Check out www.citrusdesignstudio.com. You will see through the portfolio that +I am a real business with many clients. + +That is my business that I provide managed hosting through. +I also do unmanaged VPSes. + +Normally I would charge $15/mo for 512MB. +I will do it for $10/mo for you. + +To see my pricing, go to www.linnode.com. I match everything they have except +their great panel -- you have to email or call my people. + +I provide VPS services normally for 3/4ths the posted cost on linnode.com. +(Rackspace is even more expensive.) + +I will do it for 1/2 of linnode's price for you. + +It scales linerally just like linnodes, so for 2048 MB of memory, I would +charge $40, etc. + +Later! +----- + +That would be worth considering, if they have good datacenters and +connections. $10 / month is about $20 less than what Rackspace costs. +On the other hand, Rackspace prices are no problem if the donation is +to arrive. + ++
http://www.bitcoin.org/smf/index.php?topic=393.msg3785#msg3785 + +AndrewBuck: +... + +EDIT: The wiki doesn't seem to be sending the registration e-mail so I +can log in to edit, is there some problem with the server or something? + +-Buck + ++
Please promise me you won't make a switch now. The last thing we need +is switchover hassle on top of the slashdot flood of work we've got now. + I'm losing my mind there are so many things that need to be done. + +Also, it would suck to be on a smaller, less reliable host just to save +a measly $20. + +I will try to think of a polite way to ask the donor if he sent it, but +right now there are other higher priority things that are going to bump +even that for a few days. + +Would a donation of bitcoins help in the short term? + +mmalmi@cc.hut.fi wrote: +> Rackspace has very good support, good backend, good connections and +> nicely scaling cloud based virtual servers. I got this offer from Thufir: +> +> ----- +> Hi Sirius, +> +> Check out www.citrusdesignstudio.com. You will see through the portfolio +> that +> I am a real business with many clients. +> +> That is my business that I provide managed hosting through. +> I also do unmanaged VPSes. +> +> Normally I would charge $15/mo for 512MB. +> I will do it for $10/mo for you. +> +> To see my pricing, go to www.linnode.com. I match everything they have +> except +> their great panel -- you have to email or call my people. +> +> I provide VPS services normally for 3/4ths the posted cost on linnode.com. +> (Rackspace is even more expensive.) +> +> I will do it for 1/2 of linnode's price for you. +> +> It scales linerally just like linnodes, so for 2048 MB of memory, I would +> charge $40, etc. +> +> Later! +> ----- +> +> That would be worth considering, if they have good datacenters and +> connections. $10 / month is about $20 less than what Rackspace costs. On +> the other hand, Rackspace prices are no problem if the donation is to +> arrive. +> + ++
Ok, I won't switch it. Donations in Bitcoin are helpful and can be +sent to 14EXchS9j3AAfim6mL4jtw6VWMosSUiG5U. + +> Please promise me you won't make a switch now. The last thing we need +> is switchover hassle on top of the slashdot flood of work we've got +> now. I'm losing my mind there are so many things that need to be done. +> +> Also, it would suck to be on a smaller, less reliable host just to save +> a measly $20. +> +> I will try to think of a polite way to ask the donor if he sent it, but +> right now there are other higher priority things that are going to bump +> even that for a few days. +> +> Would a donation of bitcoins help in the short term? +> +> mmalmi@cc.hut.fi wrote: +>> Rackspace has very good support, good backend, good connections and +>> nicely scaling cloud based virtual servers. I got this offer from +>> Thufir: +>> +>> ----- +>> Hi Sirius, +>> +>> Check out www.citrusdesignstudio.com. You will see through the +>> portfolio that +>> I am a real business with many clients. +>> +>> That is my business that I provide managed hosting through. +>> I also do unmanaged VPSes. +>> +>> Normally I would charge $15/mo for 512MB. +>> I will do it for $10/mo for you. +>> +>> To see my pricing, go to www.linnode.com. I match everything they +>> have except +>> their great panel -- you have to email or call my people. +>> +>> I provide VPS services normally for 3/4ths the posted cost on linnode.com. +>> (Rackspace is even more expensive.) +>> +>> I will do it for 1/2 of linnode's price for you. +>> +>> It scales linerally just like linnodes, so for 2048 MB of memory, I would +>> charge $40, etc. +>> +>> Later! +>> ----- +>> +>> That would be worth considering, if they have good datacenters and +>> connections. $10 / month is about $20 less than what Rackspace +>> costs. On the other hand, Rackspace prices are no problem if the +>> donation is to arrive. +>> + + + ++
Good news: I received the donation of $3600. At least the hosting +costs are no problem anymore. + +What do you think of the idea to offer rewards of $100-200 to the +first 5-10 established companies that start accepting Bitcoin? We'd +also assign them a dedicated support person to help with integration. +I have companies like prq.se, ipredator.se, relakks.com or +perfect-privacy.com in mind. We could also make the offer public. + ++
mmalmi@cc.hut.fi wrote: +> Good news: I received the donation of $3600. At least the hosting costs +> are no problem anymore. + +That's great! I'll let him know it was received and thank him. + +It might be a long time before we get another donation like that, we +should save a lot of it. + +Spend what you need on hosting. Email me a simple accounting when you +take out money for expenses, like: + -$60 rackspace monthly + $2540 balance + + +> What do you think of the idea to offer rewards of $100-200 to the first +> 5-10 established companies that start accepting Bitcoin? We'd also +> assign them a dedicated support person to help with integration. I have +> companies like prq.se, ipredator.se, relakks.com or perfect-privacy.com +> in mind. We could also make the offer public. + +$100-200 is chump change if they're a serious company, it would only +make us sound small. + +What they need most is confidence they can convert it to fiat currency. + That VOIP company essentially said so in a recent post. The best +thing we can do is make sure there's cash available to cash out and +support and steady the conversion rate. + +The money is leveraged better that way too. Theoretically, imagine 10 +businesses have their eye on a $100 bill being offered for bitcoins, but +don't actually cash out because they know it's there if they need it. +That one $100 bill allowed 10 different people to act like their 5000 +bitcoins were equivalent to $100. + +I think we should allocate $1000 at this point to your exchange. + ++
> Spend what you need on hosting. Email me a simple accounting when you +> take out money for expenses, like: +> -$60 rackspace monthly +> $2540 balance + +Ok. + +>> What do you think of the idea to offer rewards of $100-200 to the +>> first 5-10 established companies that start accepting Bitcoin? We'd +>> also assign them a dedicated support person to help with +>> integration. I have companies like prq.se, ipredator.se, +>> relakks.com or perfect-privacy.com in mind. We could also make the +>> offer public. +> +> $100-200 is chump change if they're a serious company, it would only +> make us sound small. +> +> What they need most is confidence they can convert it to fiat currency. +> That VOIP company essentially said so in a recent post. The best +> thing we can do is make sure there's cash available to cash out and +> support and steady the conversion rate. +> +> The money is leveraged better that way too. Theoretically, imagine 10 +> businesses have their eye on a $100 bill being offered for bitcoins, +> but don't actually cash out because they know it's there if they need +> it. That one $100 bill allowed 10 different people to act like their +> 5000 bitcoins were equivalent to $100. +> +> I think we should allocate $1000 at this point to your exchange. + +Alright, I'll add $1000 dollars to the exchange reserves. That way I +can offer more stable pricing. + +A week ago somebody bought coins with 1000 €. That was probably meant +as a donation to some extent, since 1000 € would have bought him a lot +more coins at bitcoinmarket.com than at my service. + ++
>> I think we should allocate $1000 at this point to your exchange. +> +> Alright, I'll add $1000 dollars to the exchange reserves. That way I can +> offer more stable pricing. +> +> A week ago somebody bought coins with 1000 €. That was probably meant as +> a donation to some extent, since 1000 € would have bought him a lot more +> coins at bitcoinmarket.com than at my service. + +Interesting, so how is the balance between purchases of coins and cash +going? + +Btw, are you able to use my builds of bitcoind on your host, or do you +have to build it yourself? ++
> Interesting, so how is the balance between purchases of coins and cash going? + +About +1000€ (plus the $1000) and -40000 BTC since when I started. I +should have set the initial BTC price higher, it was only 1€ / 1000 +BTC in the beginning. + +> Btw, are you able to use my builds of bitcoind on your host, or do you +> have to build it yourself? + +I had to build it myself. It had the same problem that has been +reported on the forums: /usr/lib/libstdc++.so.6: version +`GLIBCXX_3.4.11' not found. + ++
> A week ago somebody bought coins with 1000 €. That was probably meant as +> a donation to some extent, since 1000 € would have bought him a lot more +> coins at bitcoinmarket.com than at my service. + +They probably couldn't have gotten that large of a trade on +bitcoinmarket.com. ++
>> Btw, are you able to use my builds of bitcoind on your host, or do you +>> have to build it yourself? +> +> I had to build it myself. It had the same problem that has been reported +> on the forums: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found. + +Wish I could figure out how to fix that. What version of GLIBCXX does +your system have? + +Make sure you upgrade to Bitcoin 0.3.3 as soon as possible. + ++
http://www.bitcoin.org/smf/index.php?topic=338.0 + +> of e-mail blackhole list or at least the ISP that hosts the e-mail server for registration is on one of those lists. +> +> "Looks like bitcoin.org is listed on the PBL." +> http://www.spamhaus.org/pbl/query/PBL340779 + +I think our problem may be that we have forum notifications on, like +e-mail you when you receive a PM, but we don't have e-mail verification +of new accounts. Can someone put someone else's e-mail address without +verifying it, then have stuff sent there? We need to stop that right +away before it gets used for something bad. Either disallow all +notification, or make sure e-mail addresses are verified. + +I'm more inclined to disallow notifications or anything where the forum +sends you e-mail. I kinda like not requiring e-mail verification. But +if that's the only way to make sure we don't send e-mails to un-verified +addresses, then we could do that. + +If we request to get off of PBL, we'd better make sure we've got the +problem secured first. + +I changed Registration->settings->registration of new members to "Member +Activation". I assume that means it e-mail verifies. +"Member Activation +When this option is enabled any members registering to the forum will +have a activation link emailed to them which they must click before they +can become full members" + +I think that's the only way to make sure the forum can't be used to send +to other people's e-mail addresses and potentially use it to spam. ++
Please upgrade to 0.3.6 ASAP to get an important bugfix. + +See the bitcoin.org homepage for download links. + + +------------------------------------------------------------------------------ +The Palm PDK Hot Apps Program offers developers who use the +Plug-In Development Kit to bring their C/C++ apps to Palm for a share +of $1 Million in cash or HP Products. Visit us here for more details: +http://p.sf.net/sfu/dev2dev-palm +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
Oh great, now we're screwed. + +We probably got spam blocked because we were allowing registrations +without e-mail verification. But now that we've enabled it, our +verification e-mails are blocked. + +There could still be some existing user accounts created before the +registration requirement being used by spammers. + +We're kind of in a jam here. Can you make sure there's nothing else you +can think of that might be acting as an open e-mail gateway or way for +spammers to use our system for putting out spam? Check the e-mail logs +and see if there's been a lot of traffic and what it's from. If you can +figure out what the problem was and shut it down, then after you're sure +it's fixed, request PBL to take us off the block list. + +If there's a way to prohibit the forum from sending e-mail +notifications, maybe we should do that. + + + +-------- Original Message -------- +Subject: no activation mail +Date: Mon, 02 Aug 2010 22:30:35 +0200 +From: Youri <youri.de.bruycker@telenet.be> +To: satoshin@gmx.com + +Hey Satoshin, + +I tried to register me at the bitcoinforum, but I didn't get an activation +mail. +Tried the resend activation code option a few times, changed the +mailadress from my telenet to my gmail and back, but no luck. Looked at my +spam folder but it's not there. So I guess something went wrong, could you +activate my account? + +My username is Skull88. + +Thanks in advance, +Youri + ++
For "normal members" I disabled "Request notification on replies" and +"Request notification on new topics". + +I'm pretty sure there's a notification option for when you receive PMs, +but I don't see a way to disable it. If we have to, I guess we could +edit the php code. ++
Here's the info about PBL again. + + +-------- Original Message -------- +Subject: Forum e-mail notifications and PBL blacklist and wiki registration +Date: Thu, 29 Jul 2010 03:18:56 +0100 +From: Satoshi Nakamoto <satoshin@gmx.com> +To: Martti Malmi <mmalmi@cc.hut.fi> + +http://www.bitcoin.org/smf/index.php?topic=338.0 + +> of e-mail blackhole list or at least the ISP that hosts the e-mail server for registration is on one of those lists. +> +> "Looks like bitcoin.org is listed on the PBL." +> http://www.spamhaus.org/pbl/query/PBL340779 + +I think our problem may be that we have forum notifications on, like +e-mail you when you receive a PM, but we don't have e-mail verification +of new accounts. Can someone put someone else's e-mail address without +verifying it, then have stuff sent there? We need to stop that right +away before it gets used for something bad. Either disallow all +notification, or make sure e-mail addresses are verified. + +I'm more inclined to disallow notifications or anything where the forum +sends you e-mail. I kinda like not requiring e-mail verification. But +if that's the only way to make sure we don't send e-mails to un-verified +addresses, then we could do that. + +If we request to get off of PBL, we'd better make sure we've got the +problem secured first. + +I changed Registration->settings->registration of new members to "Member +Activation". I assume that means it e-mail verifies. +"Member Activation +When this option is enabled any members registering to the forum will +have a activation link emailed to them which they must click before they +can become full members" + +I think that's the only way to make sure the forum can't be used to send +to other people's e-mail addresses and potentially use it to spam. + ++
The logs don't tell very much, they just confirm that many servers +reject the emails sent by our server. I can't think of anything other +than pm notifications that could have caused the spam listing. I'll +check if I can disable the notifications from the code. + +We can allow registrations without email confirmation. It's no problem +when we're already on the spam list and no problem after the +notifications are disabled. + +> Oh great, now we're screwed. +> +> We probably got spam blocked because we were allowing registrations +> without e-mail verification. But now that we've enabled it, our +> verification e-mails are blocked. +> +> There could still be some existing user accounts created before the +> registration requirement being used by spammers. +> +> We're kind of in a jam here. Can you make sure there's nothing else +> you can think of that might be acting as an open e-mail gateway or way +> for spammers to use our system for putting out spam? Check the e-mail +> logs and see if there's been a lot of traffic and what it's from. If +> you can figure out what the problem was and shut it down, then after +> you're sure it's fixed, request PBL to take us off the block list. +> +> If there's a way to prohibit the forum from sending e-mail +> notifications, maybe we should do that. +> +> +> +> -------- Original Message -------- +> Subject: no activation mail +> Date: Mon, 02 Aug 2010 22:30:35 +0200 +> From: Youri <youri.de.bruycker@telenet.be> +> To: satoshin@gmx.com +> +> Hey Satoshin, +> +> I tried to register me at the bitcoinforum, but I didn't get an activation +> mail. +> Tried the resend activation code option a few times, changed the +> mailadress from my telenet to my gmail and back, but no luck. Looked at my +> spam folder but it's not there. So I guess something went wrong, could you +> activate my account? +> +> My username is Skull88. +> +> Thanks in advance, +> Youri + + + ++
I edited the forum code, it shouldn't send notifications anymore. + +> Oh great, now we're screwed. +> +> We probably got spam blocked because we were allowing registrations +> without e-mail verification. But now that we've enabled it, our +> verification e-mails are blocked. +> +> There could still be some existing user accounts created before the +> registration requirement being used by spammers. +> +> We're kind of in a jam here. Can you make sure there's nothing else +> you can think of that might be acting as an open e-mail gateway or way +> for spammers to use our system for putting out spam? Check the e-mail +> logs and see if there's been a lot of traffic and what it's from. If +> you can figure out what the problem was and shut it down, then after +> you're sure it's fixed, request PBL to take us off the block list. +> +> If there's a way to prohibit the forum from sending e-mail +> notifications, maybe we should do that. +> +> +> +> -------- Original Message -------- +> Subject: no activation mail +> Date: Mon, 02 Aug 2010 22:30:35 +0200 +> From: Youri <youri.de.bruycker@telenet.be> +> To: satoshin@gmx.com +> +> Hey Satoshin, +> +> I tried to register me at the bitcoinforum, but I didn't get an activation +> mail. +> Tried the resend activation code option a few times, changed the +> mailadress from my telenet to my gmail and back, but no luck. Looked at my +> spam folder but it's not there. So I guess something went wrong, could you +> activate my account? +> +> My username is Skull88. +> +> Thanks in advance, +> Youri + + + ++
I sent a removal request to PBL. + +The FAQ says: "The first thing to know is: THE PBL IS NOT A BLACKLIST. +You are not listed for spamming or for anything you have done. The PBL +is simply a list of all of the world's dynamic IP space, i.e: IP +ranges normally assigned to ISP broadband customers (DSL, DHCP, PPP, +cable, dialup). It is perfectly normal for dynamic IP addresses to be +listed on the PBL. In fact all dynamic IP addresses in the world +should be on the PBL. Even static IPs which do not send mail should be +listed in the PBL." So we didn't even need to allow spam to be on the +list. + +> Here's the info about PBL again. +> +> +> -------- Original Message -------- +> Subject: Forum e-mail notifications and PBL blacklist and wiki registration +> Date: Thu, 29 Jul 2010 03:18:56 +0100 +> From: Satoshi Nakamoto <satoshin@gmx.com> +> To: Martti Malmi <mmalmi@cc.hut.fi> +> +> http://www.bitcoin.org/smf/index.php?topic=338.0 +> +>> of e-mail blackhole list or at least the ISP that hosts the e-mail +>> server for registration is on one of those lists. +>> +>> "Looks like bitcoin.org is listed on the PBL." +>> http://www.spamhaus.org/pbl/query/PBL340779 +> +> I think our problem may be that we have forum notifications on, like +> e-mail you when you receive a PM, but we don't have e-mail verification +> of new accounts. Can someone put someone else's e-mail address without +> verifying it, then have stuff sent there? We need to stop that right +> away before it gets used for something bad. Either disallow all +> notification, or make sure e-mail addresses are verified. +> +> I'm more inclined to disallow notifications or anything where the forum +> sends you e-mail. I kinda like not requiring e-mail verification. But +> if that's the only way to make sure we don't send e-mails to un-verified +> addresses, then we could do that. +> +> If we request to get off of PBL, we'd better make sure we've got the +> problem secured first. +> +> I changed Registration->settings->registration of new members to "Member +> Activation". I assume that means it e-mail verifies. +> "Member Activation +> When this option is enabled any members registering to the forum will +> have a activation link emailed to them which they must click before they +> can become full members" +> +> I think that's the only way to make sure the forum can't be used to send +> to other people's e-mail addresses and potentially use it to spam. + + + ++
I deposited the donation to a bank as euros. The donation was actually +not $3600 but 3500$. I miscalculated it as it was packed in (18 + 17) +* $100 instead of (18 + 18) * $100. + +$3500 made 2608.28€. + +-750€ to back up BitcoinExchange.com +-28.92€ for the hosting in July +1829€ balance + ++
Are PM notifications still disabled? (All we really need is disable the +forum's access to the mail server) + +> Does it work correctly now? I had made some forum code changes to +> disable PM email notification, but just reverted most of them as +> unnecessary. + +mmalmi@cc.hut.fi wrote: +> I sent a removal request to PBL. +> +> The FAQ says: "The first thing to know is: THE PBL IS NOT A BLACKLIST. +> You are not listed for spamming or for anything you have done. The PBL +> is simply a list of all of the world's dynamic IP space, i.e: IP ranges +> normally assigned to ISP broadband customers (DSL, DHCP, PPP, cable, +> dialup). It is perfectly normal for dynamic IP addresses to be listed on +> the PBL. In fact all dynamic IP addresses in the world should be on the +> PBL. Even static IPs which do not send mail should be listed in the +> PBL." So we didn't even need to allow spam to be on the list. +> +>> Here's the info about PBL again. +>> +>> +>> -------- Original Message -------- +>> Subject: Forum e-mail notifications and PBL blacklist and wiki +>> registration +>> Date: Thu, 29 Jul 2010 03:18:56 +0100 +>> From: Satoshi Nakamoto <satoshin@gmx.com> +>> To: Martti Malmi <mmalmi@cc.hut.fi> +>> +>> http://www.bitcoin.org/smf/index.php?topic=338.0 +>> +>>> of e-mail blackhole list or at least the ISP that hosts the e-mail +>>> server for registration is on one of those lists. +>>> +>>> "Looks like bitcoin.org is listed on the PBL." +>>> http://www.spamhaus.org/pbl/query/PBL340779 +>> +>> I think our problem may be that we have forum notifications on, like +>> e-mail you when you receive a PM, but we don't have e-mail verification +>> of new accounts. Can someone put someone else's e-mail address without +>> verifying it, then have stuff sent there? We need to stop that right +>> away before it gets used for something bad. Either disallow all +>> notification, or make sure e-mail addresses are verified. +>> +>> I'm more inclined to disallow notifications or anything where the forum +>> sends you e-mail. I kinda like not requiring e-mail verification. But +>> if that's the only way to make sure we don't send e-mails to un-verified +>> addresses, then we could do that. +>> +>> If we request to get off of PBL, we'd better make sure we've got the +>> problem secured first. +>> +>> I changed Registration->settings->registration of new members to "Member +>> Activation". I assume that means it e-mail verifies. +>> "Member Activation +>> When this option is enabled any members registering to the forum will +>> have a activation link emailed to them which they must click before they +>> can become full members" +>> +>> I think that's the only way to make sure the forum can't be used to send +>> to other people's e-mail addresses and potentially use it to spam. +> +> +> + ++
Yes, they're still disabled. Disabling the access to the mail server +would be easy, but we probably want to keep the password recovery by +email. + +> Are PM notifications still disabled? (All we really need is disable +> the forum's access to the mail server) +> +>> Does it work correctly now? I had made some forum code changes to +>> disable PM email notification, but just reverted most of them as +>> unnecessary. +> +> mmalmi@cc.hut.fi wrote: +>> I sent a removal request to PBL. +>> +>> The FAQ says: "The first thing to know is: THE PBL IS NOT A +>> BLACKLIST. You are not listed for spamming or for anything you have +>> done. The PBL is simply a list of all of the world's dynamic IP +>> space, i.e: IP ranges normally assigned to ISP broadband customers +>> (DSL, DHCP, PPP, cable, dialup). It is perfectly normal for dynamic +>> IP addresses to be listed on the PBL. In fact all dynamic IP +>> addresses in the world should be on the PBL. Even static IPs which +>> do not send mail should be listed in the PBL." So we didn't even +>> need to allow spam to be on the list. +>> +>>> Here's the info about PBL again. +>>> +>>> +>>> -------- Original Message -------- +>>> Subject: Forum e-mail notifications and PBL blacklist and wiki registration +>>> Date: Thu, 29 Jul 2010 03:18:56 +0100 +>>> From: Satoshi Nakamoto <satoshin@gmx.com> +>>> To: Martti Malmi <mmalmi@cc.hut.fi> +>>> +>>> http://www.bitcoin.org/smf/index.php?topic=338.0 +>>> +>>>> of e-mail blackhole list or at least the ISP that hosts the +>>>> e-mail server for registration is on one of those lists. +>>>> +>>>> "Looks like bitcoin.org is listed on the PBL." +>>>> http://www.spamhaus.org/pbl/query/PBL340779 +>>> +>>> I think our problem may be that we have forum notifications on, like +>>> e-mail you when you receive a PM, but we don't have e-mail verification +>>> of new accounts. Can someone put someone else's e-mail address without +>>> verifying it, then have stuff sent there? We need to stop that right +>>> away before it gets used for something bad. Either disallow all +>>> notification, or make sure e-mail addresses are verified. +>>> +>>> I'm more inclined to disallow notifications or anything where the forum +>>> sends you e-mail. I kinda like not requiring e-mail verification. But +>>> if that's the only way to make sure we don't send e-mails to un-verified +>>> addresses, then we could do that. +>>> +>>> If we request to get off of PBL, we'd better make sure we've got the +>>> problem secured first. +>>> +>>> I changed Registration->settings->registration of new members to "Member +>>> Activation". I assume that means it e-mail verifies. +>>> "Member Activation +>>> When this option is enabled any members registering to the forum will +>>> have a activation link emailed to them which they must click before they +>>> can become full members" +>>> +>>> I think that's the only way to make sure the forum can't be used to send +>>> to other people's e-mail addresses and potentially use it to spam. +>> +>> +>> + + + ++
Right, forgot about that. + +Hopefully theymos was right that the PBL is the source of the problem. + +mmalmi@cc.hut.fi wrote: +> Yes, they're still disabled. Disabling the access to the mail server +> would be easy, but we probably want to keep the password recovery by email. +> +>> Are PM notifications still disabled? (All we really need is disable +>> the forum's access to the mail server) +>> +>>> Does it work correctly now? I had made some forum code changes to +>>> disable PM email notification, but just reverted most of them as +>>> unnecessary. +>> +>> mmalmi@cc.hut.fi wrote: +>>> I sent a removal request to PBL. +>>> +>>> The FAQ says: "The first thing to know is: THE PBL IS NOT A +>>> BLACKLIST. You are not listed for spamming or for anything you have +>>> done. The PBL is simply a list of all of the world's dynamic IP +>>> space, i.e: IP ranges normally assigned to ISP broadband customers +>>> (DSL, DHCP, PPP, cable, dialup). It is perfectly normal for dynamic +>>> IP addresses to be listed on the PBL. In fact all dynamic IP +>>> addresses in the world should be on the PBL. Even static IPs which +>>> do not send mail should be listed in the PBL." So we didn't even +>>> need to allow spam to be on the list. +>>> +>>>> Here's the info about PBL again. +>>>> +>>>> +>>>> -------- Original Message -------- +>>>> Subject: Forum e-mail notifications and PBL blacklist and wiki +>>>> registration +>>>> Date: Thu, 29 Jul 2010 03:18:56 +0100 +>>>> From: Satoshi Nakamoto <satoshin@gmx.com> +>>>> To: Martti Malmi <mmalmi@cc.hut.fi> +>>>> +>>>> http://www.bitcoin.org/smf/index.php?topic=338.0 +>>>> +>>>>> of e-mail blackhole list or at least the ISP that hosts the +>>>>> e-mail server for registration is on one of those lists. +>>>>> +>>>>> "Looks like bitcoin.org is listed on the PBL." +>>>>> http://www.spamhaus.org/pbl/query/PBL340779 +>>>> +>>>> I think our problem may be that we have forum notifications on, like +>>>> e-mail you when you receive a PM, but we don't have e-mail verification +>>>> of new accounts. Can someone put someone else's e-mail address without +>>>> verifying it, then have stuff sent there? We need to stop that right +>>>> away before it gets used for something bad. Either disallow all +>>>> notification, or make sure e-mail addresses are verified. +>>>> +>>>> I'm more inclined to disallow notifications or anything where the forum +>>>> sends you e-mail. I kinda like not requiring e-mail verification. But +>>>> if that's the only way to make sure we don't send e-mails to +>>>> un-verified +>>>> addresses, then we could do that. +>>>> +>>>> If we request to get off of PBL, we'd better make sure we've got the +>>>> problem secured first. +>>>> +>>>> I changed Registration->settings->registration of new members to +>>>> "Member +>>>> Activation". I assume that means it e-mail verifies. +>>>> "Member Activation +>>>> When this option is enabled any members registering to the forum will +>>>> have a activation link emailed to them which they must click before +>>>> they +>>>> can become full members" +>>>> +>>>> I think that's the only way to make sure the forum can't be used to +>>>> send +>>>> to other people's e-mail addresses and potentially use it to spam. +>>> +>>> +>>> +> +> +> + ++
*** WARNING *** We are investigating a problem. DO NOT TRUST ANY +TRANSACTIONS THAT HAPPENED AFTER 15.08.2010 17:05 UTC (block 74638) +until the issue is resolved. + +------------------------------------------------------------------------------ +This SF.net email is sponsored by + +Make an app they can't live without +Enter the BlackBerry Developer Challenge +http://p.sf.net/sfu/RIM-dev2dev +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
+-------- Original Message -------- +Subject: SweepMines now accept bitcoins +Date: Tue, 24 Aug 2010 19:50:47 +0600 +From: Kirill Kisel <kisel2626@gmail.com> +To: satoshin@gmx.com + + + +Dear BitCoin. + +http://apps.facebook.com/sweepmines/ now accepts BitCoins. + +This is single-player computer game based on Windows Minesweeper version. + +Would you be so kind to add us to the http://www.bitcoin.org/trade page? + +Thank you. ++
+1829€ +-23,32€ August hosting bill +-24,40 September hosting bill + ++
> +1829€ +> -23,32€ August hosting bill +> -24,40 September hosting bill + +-------- ++1781,28 + ++
I noticed my custom captcha stuff is gone. I guess it got lost in an +upgrade? What are we doing for captcha now? If we only have default +captcha, we'd be getting flooded with spam accounts. Do I need to +re-integrate the custom captcha stuff or do we have another solution now? ++
Sorry, I didn't notice your custom code when updating. Re-integration +is a good idea if it's not too much work. I've removed hundreds of +spam accounts by making a search for old accounts that have a webpage +url and 0 posts. + +> I noticed my custom captcha stuff is gone. I guess it got lost in an +> upgrade? What are we doing for captcha now? If we only have default +> captcha, we'd be getting flooded with spam accounts. Do I need to +> re-integrate the custom captcha stuff or do we have another solution +> now? + + + ++
I reuploaded the changes. For future reference, the files in Sources +with customisations are: +Register.php +PersonalMessage.php +ManageRegistration.php +Subs.php + +Let me know whenever you do an upgrade so I can make sure all my changes +survived. + +Hopefully the 1.1.x line is mature and updates are infrequent. We +shouldn't upgrade to 2.0. I made a ton of customisations that wouldn't +be compatible, and I kind of prefer the look of 1.1 over 2.0 anyway. + +The captcha url has mycode=4 added to it, and the register page has +extra hidden mycode=2 through 5 images so any automated thing wouldn't +know which one to pick. Everything that uses captcha has to have that +mycode=4 thing added. Something in sending personal messages also uses +captcha. + +mmalmi@cc.hut.fi wrote: +> Sorry, I didn't notice your custom code when updating. Re-integration is +> a good idea if it's not too much work. I've removed hundreds of spam +> accounts by making a search for old accounts that have a webpage url and +> 0 posts. +> +>> I noticed my custom captcha stuff is gone. I guess it got lost in an +>> upgrade? What are we doing for captcha now? If we only have default +>> captcha, we'd be getting flooded with spam accounts. Do I need to +>> re-integrate the custom captcha stuff or do we have another solution +>> now? +> +> +> + ++
+-------- Original Message -------- +Subject: Bitcoin.org is down +Date: Tue, 30 Nov 2010 18:27:02 -0600 +From: theymos <theymos@mm.st> +To: satoshin@gmx.com + +Bitcoin.org has been down for several hours. + ++
Do you know what caused that outage? Did it need to be rebooted, or was +it a DoS or something? The IP was pingable during the outage. + +Did you get back to davidonpda about his doing a mirror backup? I think +that's a really good idea. Do you do any backups, or the VPS do any for +you automatically? ++
> Do you know what caused that outage? Did it need to be rebooted, or +> was it a DoS or something? The IP was pingable during the outage. + +I don't know what it was. It started working again when I rebooted it. +Someone suggested it might have been the heavy load from a Reddit post +about Bitcoin. Inspecting the logs would be useful, but I don't have +much time now. + +> Did you get back to davidonpda about his doing a mirror backup? I +> think that's a really good idea. Do you do any backups, or the VPS do +> any for you automatically? + +I told him to go ahead. I don't do automatic backups atm. We should +have more server admins soon when I get bitcoinexchange.com to another +server. I could give the root password to you and somebody else. Xunie +has volunteered, but we might find somebody even more professional outage was due to heavy load, he could help us move to lighttpd or +optimize resources otherwise. Should we make a recruitment thread on +the forum? + ++
> I told him to go ahead. I don't do automatic backups atm. We should have +> more server admins soon when I get bitcoinexchange.com to another +> server. I could give the root password to you and somebody else. Xunie +> has volunteered, but we might find somebody even more professional from +> the forum and keep the number of admins at the minimum. If the outage +> was due to heavy load, he could help us move to lighttpd or optimize +> resources otherwise. Should we make a recruitment thread on the forum? + +It should be Gavin. I trust him, he's responsible, professional, and +technically much more linux capable than me. + +(I don't know Xunie, but he hasn't posted for months and he was a goofball) + ++
I'm ready to send you the password. Can you send me your PGP key so I +don't have to send it in plaintext? + +> It should be Gavin. I trust him, he's responsible, professional, and +> technically much more linux capable than me. + +Ok, I'll ask him. + ++
mmalmi@cc.hut.fi wrote: +> I'm ready to send you the password. Can you send me your PGP key so I +> don't have to send it in plaintext? +> +>> It should be Gavin. I trust him, he's responsible, professional, and +>> technically much more linux capable than me. +> +> Ok, I'll ask him. + +Thanks, did you finish moving bitcoinexchange to another server? + + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.7 (MingW32) + +mQGiBEkJ+qcRBADKDTcZlYDRtP1Q7/ShuzBJzUh9hoVVowogf2W07U6G9BqKW24r +piOxYmErjMFfvNtozNk+33cd/sq3gi05O1IMmZzg2rbF4ne5t3iplXnNuzNh+j+6 +VxxA16GPhBRprvnng8r9GYALLUpo9Xk17KE429YYKFgVvtTPtEGUlpO1EwCg7FmW +dBbRp4mn5GfxQNT1hzp9WgkD/3pZ0cB5m4enzfylOHXmRfJKBMF02ZDnsY1GqeHv +/LjkhCusTp2qz4thLycYOFKGmAddpVnMsE/TYZLgpsxjrJsrEPNSdoXk3IgEStow +mXjTfr9xNOrB20Qk0ZOO1mipOWMgse4PmIu02X24OapWtyhdHsX3oBLcwDdke8aE +gAh8A/sHlK7fL1Bi8rFzx6hb+2yIlD/fazMBVZUe0r2uo7ldqEz5+GeEiBFignd5 +HHhqjJw8rUJkfeZBoTKYlDKo7XDrTRxfyzNuZZPxBLTj+keY8WgYhQ5MWsSC2MX7 +FZHaJddYa0pzUmFZmQh0ydulVUQnLKzRSunsjGOnmxiWBZwb6bQjU2F0b3NoaSBO +YWthbW90byA8c2F0b3NoaW5AZ214LmNvbT6IYAQTEQIAIAUCSQn6pwIbAwYLCQgH +AwIEFQIIAwQWAgMBAh4BAheAAAoJEBjAnoZeyUihXGMAnjiWJ0fvmSgSM3o6Tu3q +RME9GN7QAKCGrFw9SUD0e9/YDcqhX1aPMrYue7kCDQRJCfqnEAgA9OTCjLa6Sj7t +dZcQxNufsDSCSB+yznIGzFGXXpJk7GgKmX3H9Zl4E6zJTQGXL2GAV4klkSfNtvgs +SGJKqCnebuZVwutyq1vXRNVFPQFvLVVo2jJCBHWjb03fmXmavIUtRCHoc8xgVJMQ +LrwvS943GgsqSbdoKZWdTnfnEq+UaGo+Qfv66NpT3Yl0CXUiNBITZOJcJdjHDTBO +XRqomX2WSguv+btYdhQGGQiaEx73XMftXNCxbOpqwsODQns7xTcl2ENru9BNIQME +I7L9FYBQUiKHm1k6RrBy1as8XElS2jEos7GAmlfF1wShFUX+NF1VOPdbN3ZdFoWq +sUjKk+QbrwADBQgA9DiD4+uuRhwk2B1TmtrXnwwhcdkE7ZbLHjxBfCsLPAZiPh8c +ICfV3S418i4H1YCz2ItcnC8KAPoS6mipyS28AU1B7zJYPODBn8E7aPSPzHJfudMK +MqiCHljVJrE23xsKTC0sIhhSKcr2G+6ARoG5lwuoqJqEyDrblVQQFpVxBNPHSTqu +O5PoLXQc7PKgC5SyQuZbEALEkItl2SL2yBRRGOlVJLnvZ6eaovkAlgsbGdlieOr0 +UwWuJCwzZuBDruMYAfyQBvYfXZun3Zm84rW7Jclp18mXITwGCVHg/P5n7QMbBfZQ +A25ymkuj636Nqh+c4zRnSINfyrDcID7AcqEb6IhJBBgRAgAJBQJJCfqnAhsMAAoJ +EBjAnoZeyUihPrcAniVWl5M44RuGctJe+IMNX4eVkC08AJ9v7cXsp5uDdQNo8q3R +8RHwN4Gk8w== +=3FTe +-----END PGP PUBLIC KEY BLOCK----- + + +It's also at +http://www.bitcoin.org/Satoshi_Nakamoto.asc + ++
Attached is the root password encrypted. + +> Thanks, did you finish moving bitcoinexchange to another server? + +I moved all the files, database and bitcoind, but still some work +needed to get it running. The old site is down atm anyway, so feel +free to reboot if needed. + ++
Mind if I add you to the Project Developers list on the Contact page? +You wrote some code before so you should be there. It would have to be +your real name for consistency. If you want to have an e-mail address +listed, I'll make an image out of it so it doesn't attract spam. + ++
Ok. You can include the e-mail address. + +> Mind if I add you to the Project Developers list on the Contact page? +> You wrote some code before so you should be there. It would have to be +> your real name for consistency. If you want to have an e-mail address +> listed, I'll make an image out of it so it doesn't attract spam. + + + ++
Version 0.3.18 is now available. + +Changes: +- Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 +and then upgraded again +- IsStandard() check to only include known transaction types in blocks +- Jgarzik's optimisation to speed up the initial block download a little + +The main addition in this release is the Accounts-based JSON-RPC +commands that Gavin's been working on (more details at +http://www.bitcoin.org/smf/index.php?topic=1886.0). +- getaccountaddress +- sendfrom +- move +- getbalance +- listtransactions + +Download: +http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.18/ + + + + +------------------------------------------------------------------------------ +This SF Dev2Dev email is sponsored by: + +WikiLeaks The End of the Free Internet +http://p.sf.net/sfu/therealnews-com +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
Bitcoin.org was down again today for some time. It responded to ping +but not ssh or http. I rebooted it and found out it was an out of +memory error and mysqld got killed. It was the same error last time, +but with apache getting killed. I couldn't think of anything better, +so I resized the server from 512MB to 1024MB of memory. + ++
This is a minor release to add some DoS protection. + +Changes: +- Added some DoS limits, though it's still far from DoS resistant. +- Removed "safe mode" alerts. + +http://www.bitcoin.org/smf/index.php?topic=2228.0 + +Download: +http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.19/ + +------------------------------------------------------------------------------ +Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL, +new data types, scalar functions, improved concurrency, built-in packages, +OCI, SQL*Plus, data movement tools, best practices and more. +http://p.sf.net/sfu/oracle-sfdev2dev +_______________________________________________ +bitcoin-list mailing list +bitcoin-list@lists.sourceforge.net +https://lists.sourceforge.net/lists/listinfo/bitcoin-list ++
ShadowOfHarbringer described a way of mirroring the bitcoin.org +website and forum here: +http://www.bitcoin.org/smf/index.php?topic=2026.msg30043#msg30043 + +Should we go by it and trust the database along with its password +hashes to some reliable community members who have servers? Another +option is to encrypt the backups with pgp and store them in multiple +places. + ++
Gavin Andresen wrote: +> On Mon, Dec 20, 2010 at 10:55 AM, <mmalmi@cc.hut.fi> wrote: +>> ShadowOfHarbringer described a way of mirroring the bitcoin.org website and +>> forum here: +>> http://www.bitcoin.org/smf/index.php?topic=2026.msg30043#msg30043 +>> +>> Should we go by it and trust the database along with its password hashes to +>> some reliable community members who have servers? +> +> That seems like asking for trouble, and I think it would violate the +> implicit trust of everybody who's registered for the forums. + +I agree, don't let the database out of your hands. There's private PM +in there, e-mail addresses, passwords. + +BTW, password hashes = passwords. It's easy to break the hash of short +passwords people use on forums. +6 chars = 3 difficulty +7 chars = 410 difficulty +8 chars = 25418 difficulty + + +>> Another option is to +>> > encrypt the backups with pgp and store them in multiple places. +> +> That seems wiser. Daily backups copied ... somewhere ... seems like +> the right thing to do. If they're reasonably small (less than a +> gigabyte), I'd be happy to pay for Amazon S3 storage/bandwidth for +> them. + ++1 + +Even with encryption, a trusted storage place is better. + ++
Ok. I'll start backing up to another server I'm using. I'll send you +the SSH key when I've set it up, so you can start backing up to any +server you want. The backup file size is about 50 MB atm. + +Here's my pgp key btw: http://www.bitcoin.org/mmalmi.asc + +> Gavin Andresen wrote: +>> On Mon, Dec 20, 2010 at 10:55 AM, <mmalmi@cc.hut.fi> wrote: +>>> ShadowOfHarbringer described a way of mirroring the bitcoin.org website and +>>> forum here: +>>> http://www.bitcoin.org/smf/index.php?topic=2026.msg30043#msg30043 +>>> +>>> Should we go by it and trust the database along with its password hashes to +>>> some reliable community members who have servers? +>> +>> That seems like asking for trouble, and I think it would violate the +>> implicit trust of everybody who's registered for the forums. +> +> I agree, don't let the database out of your hands. There's private PM +> in there, e-mail addresses, passwords. +> +> BTW, password hashes = passwords. It's easy to break the hash of short +> passwords people use on forums. +> 6 chars = 3 difficulty +> 7 chars = 410 difficulty +> 8 chars = 25418 difficulty +> +> +>>> Another option is to +>>>> encrypt the backups with pgp and store them in multiple places. +>> +>> That seems wiser. Daily backups copied ... somewhere ... seems like +>> the right thing to do. If they're reasonably small (less than a +>> gigabyte), I'd be happy to pay for Amazon S3 storage/bandwidth for +>> them. +> +> +1 +> +> Even with encryption, a trusted storage place is better. + + + ++
You can fetch the backup with: +wget --no-check-certificate +https://backup:cAr26Ram@www.bitcoin.org/backup/bitcoinsite.tar.bz2.gpg + +It's updated every day 11:00 GMT. + ++
Gavin Andresen wrote: +> I'd be happy to talk to Rainey; + +Great + +> Satoshi, I assume you don't want to +> deal with press/PR/interviews ? + +True + +> We could decline to talk to the press-- Satoshi, I know you've +> expressed concern about bitcoin growing too big too fast, and being +> unable to keep up with traffic/attacks/feature requests/etc. But I +> don't think ignoring the press will make them go away; they'll just +> talk to somebody else. I think it is better to give a realistic +> impression of bitcoin (it is cutting-edge, beta software that is still +> being developed, it is not poised to replace PayPal or the Euro +> anytime soon, etc) rather than let somebody over-enthusiastic become +> "the unofficial bitcoin spokesperson." + +You're the best person to do it. + +EFF is really important. We want to have a good relationship with them. + We're the type of project they like; they've helped the TOR project +and done a lot to protect P2P file sharing. + ++
Martti, Thank you for the pdf. It looks great. I do not see a date on it. When was it written? Mr. Mark Herpel of Digital Gold Currency Magazine brought Bitcoin to my attention for inclusion in my thesis. The thesis working title is: Digital Currency Systems: Emerging B2B e-Commerce Alternative During Monetary Crisis in the United States. I discuss the five types of systems per Mr. Herpels suggestion. Appreciate it and hope to talk soon. C. Constance J. Wells, CeM, PMP: PMI certified Denver, CO U.S.A. 303-730-6609 --- On Mon, 1/24/11, mmalmi@cc.hut.fi <mmalmi@cc.hut.fi> wrote:
|
The paper was published in 2008. + +Someone needs to correct Wikipedia; it incorrectly says the paper was +published in 2009. The paper was released earlier than the software. + + +mmalmi@cc.hut.fi wrote: +> Can you comment on this? +> +> ----- Forwarded message from cjwells_1@yahoo.com ----- +> Date: Mon, 24 Jan 2011 00:32:48 -0800 (PST) +> From: "Constance J. Wells" <cjwells_1@yahoo.com> +> Reply-To: "Constance J. Wells" <cjwells_1@yahoo.com> +> Subject: Re: +> To: mmalmi@cc.hut.fi +> +> Martti, +> Thank you for the pdf. It looks great. I do not see a date on it. When +> was it written? +> +> Mr. Mark Herpel of Digital Gold Currency Magazine brought Bitcoin to my +> attention for inclusion in my thesis. The thesis working title is: +> Digital Currency Systems: Emerging B2B e-Commerce Alternative During +> Monetary Crisis in the United States. I discuss the five types of +> systems per Mr. Herpels suggestion. +> +> Appreciate it and hope to talk soon. +> +> C. +> +> Constance J. Wells, CeM, PMP: PMI certified +> Denver, CO U.S.A. +> 303-730-6609 +> +> --- On Mon, 1/24/11, mmalmi@cc.hut.fi <mmalmi@cc.hut.fi> wrote: +> +> From: mmalmi@cc.hut.fi <mmalmi@cc.hut.fi> +> Subject: Re: +> To: "Constance J. Wells" <cjwells_1@yahoo.com> +> Date: Monday, January 24, 2011, 1:22 AM +> +> Hi Constance, +> +> Thanks for your interest in Bitcoin, feel free to cite. There's also +> Satoshi Nakamoto's paper available at http://www.bitcoin.org/bitcoin.pdf +> if you want something with a more formal touch. Please let us know when +> your thesis is finished! +> +> +> -Martti +> +>> Martti Malmi +>> Currently I am a full time student at- +>> http://info.aspen.edu/ +>> Aspen University, in Denver, CO, 303-333-4224. +>> Masters of Science in Technology and Innovation. +>> +>> I am writing my Thesis under the subject heading, digital currency +>> systems. May I cite your site in my Thesis? +>> +>> Thank you. +>> Constance +>> Constance J. Wells, CeM, PMP: PMI certified +>> Denver, CO U.S.A. +>> 303-730-6609 +>> +>> +>> +> +> +> +> +> ++
+1781.28 +-22.63 October hosting +-28.70 November hosting +-30.36 December hosting +-48.35 January hosting (server upscaled to 1024MB RAM) ++0.78 Annual interest on deposit + +------- ++1652.02 + + + +Since I'm no longer maintaining bitcoinexchange.com, I'm returning the +750€ to the project budget. I'll do this when I get a payment from the +SMS gateway provider. + ++
Looks like an excellent opportunity to reach an important audience +that doesn't follow Slashdot or Reddit. I'd recommend this job for +Gavin or Bruce Wagner. Or maybe there can be two attendees. S3052 from +the forum also seemed potentially competent. + +Gavin, would you be interested in organizing this? + +> Hello, +> +> I am writing you on behalf of the EPCA Conference because we are +> interested to learn more about Bitcoin. Possibly Bitcoin is an +> interesting topic for the upcoming conference 4-6 April in Amsterdam. +> +> At this top rated conference we deal with the key strategic +> developments in the 'transaction industry' so not limited to +> payments. The event is truly 'professional for professional', so +> every presentation is screened on quality and relevance (no sales +> pitches). See also: +> www.epcaconference.com<http://www.epcaconference.com> . +> +> Since we discuss the most relevant topics in the industry, I would +> like to investigate whether the Bitcoin paradigm is interesting for +> the attendees. This should give the attendees (bankers and other +> financial professionals) a lot of inspiration for their own +> business. At the same time it is a good opportunity to position +> Bitcoin within the international audience, to gain unique strategic +> insights and to network within the European professional scene. +> +> Can we have contact this week to elaborate this further? Thank you +> in advance, +> +> Look forward hearing from you, +> +> Kind regards, +> Douwe Lycklama +> EPCA Conference Chaiman +> +> +> +> Douwe Lycklama | Innopay +> douwe@innopay.com<mailto:douwe@innopay.com> +> +31 655 711 150 +> +> 'Imagine - Create - Innovate: Unlocking the Payments Potential' +> 10th international EPCA conference +> 4-6 April 2011, Amsterdam +> www.epcaconference.com<http://www.epcaconference.com/> +> +> Triport III 7th floor +> Westelijke Randweg 43 +> 1118 CR SCHIPHOL AIRPORT +> The Netherlands +> +> + + + ++
Hello, + +Thanks for contacting and sorry for the late response. EPCA seems very +interesting for the Bitcoin project, a good opportunity for +networking. I'll find somebody who can work with you on this. In the +meantime please ask me for any questions. + +Best regards, + +Martti Malmi +Bitcoin project developer + +> Hello, +> +> I am writing you on behalf of the EPCA Conference because we are +> interested to learn more about Bitcoin. Possibly Bitcoin is an +> interesting topic for the upcoming conference 4-6 April in Amsterdam. +> +> At this top rated conference we deal with the key strategic +> developments in the 'transaction industry' so not limited to +> payments. The event is truly 'professional for professional', so +> every presentation is screened on quality and relevance (no sales +> pitches). See also: +> www.epcaconference.com<http://www.epcaconference.com> . +> +> Since we discuss the most relevant topics in the industry, I would +> like to investigate whether the Bitcoin paradigm is interesting for +> the attendees. This should give the attendees (bankers and other +> financial professionals) a lot of inspiration for their own +> business. At the same time it is a good opportunity to position +> Bitcoin within the international audience, to gain unique strategic +> insights and to network within the European professional scene. +> +> Can we have contact this week to elaborate this further? Thank you +> in advance, +> +> Look forward hearing from you, +> +> Kind regards, +> Douwe Lycklama +> EPCA Conference Chaiman +> +> +> +> Douwe Lycklama | Innopay +> douwe@innopay.com<mailto:douwe@innopay.com> +> +31 655 711 150 +> +> 'Imagine - Create - Innovate: Unlocking the Payments Potential' +> 10th international EPCA conference +> 4-6 April 2011, Amsterdam +> www.epcaconference.com<http://www.epcaconference.com/> +> +> Triport III 7th floor +> Westelijke Randweg 43 +> 1118 CR SCHIPHOL AIRPORT +> The Netherlands +> +> + + + ++
> I have not sent a message to the sourceforge bitcoin-list mailing list +> because I don't think I have permission; Satoshi, can you give me +> permission, encrypt the mailman password with my public key and send +> it to me, or just post the announcement? + +Martti should give you the Drupal admin password. + +Any subscriber can post to bitcoin-list. Here's the admin password in +case you need it later. + +Gavin: +-----BEGIN PGP MESSAGE----- +Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0 + +hQIOAxfAPINgyySWEAf9GHyuMqxkhoBe96hbHoFPIR4ORpMS/v2mpCT70UmgTt46 +GVO5MeEOFE4JUqltYUaAE2u7e7+BbyNFeNk4o0kwJIWUXbRoBHj59vx+yzmeRLd9 +YxTWxZA2zOVcYcYoDkiYAatwlQWQefzwYFcCnBSSsY1F9XLHMtLqNadhftOregoE +5Prhjk4ScAEOAmJ2CfYvWLD6FPAe4s6nXzP656oQghMgUivYoowHAjGUSvd8f1Qb +fkV0isGIYCpHCOSZDZpysPCm63ibEeiuylvkT7Ayj2HoonqypFdv05mtyS7Jtq6a +s06UqjLSyICoGJVk4x5HZhusgmbqViLvb6gM+iadbQf/U9KEKA5KyF0JvjYlx97k +Bm7WpBIxKnP6Migl/Otol85EYt9rWN0lozLGw5Ko1JTZzXv3RrTsJafUYnDyAvtR +20JExoG84LatTeFiTqVWHiWZbYG2ECJHTO6jOmITvNvq/OgCID4hQvjvNQiXghae +qzolzmZVEwDGAybWJoSvAsXjDWbAyHt9WJztHPgVRxgTBrnhoLAX0FwKGTCr7L/t +emVEUqgEf3WqmljD+cCXSNVloQxGmPvaSsbITIZvX/emwq4MAC+SuRmJLJp6kSmu +UhkxZMipvYHfyBPXoonAM7oYXNIaFQryS66UlEziSUevvU8TXiZMeUyyiMirOBXC +itKhAedpc7NQYG+/KohTS0U9QfdygBfE2o6M96tRKFdMmbQz3Gyq0BaBpp98+ve+ +VOVp90mYv9zq43G7tHnZektEjGzplHj0HzWhfbiy2dBrDGhkByYN4G6kX0JvU4ZX +/ixmbOf5qZPqcgmz7fYDxKnkUQVumoEIfNXrUlAPcI2Ql9TnY0NIg9ZIVOGeT4lE +80kYloQVdCdnrJ7yLWexO0W1kSs= +=S7eV +-----END PGP MESSAGE----- + +Martti: +-----BEGIN PGP MESSAGE----- +Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0 + +hQEMA+kEt/4bukJEAQgAlt5/Ks5pZPeusK0yefyMn7BqIVcOVHDaXbnf4dLKqq5J +6bKyMlkyYjhm1itZabi+IaV9k+1r7Wo50qOqfZNCSmG63hX3asXWd7QxThj4KDxr +fvuUfiduf2AyZcB4r/baw1hsdC3VGxQutU0ookuJqfvCIse77clS2WimKJ5hrh5G +KVdGApk3TxbILknalIs3mUw81sL0nvbO/aNrHiiNj44YU3Ehf5CieEJInHeYGTsJ +AABLZcH6B7nymA8D4nrAAnDcjcSE8+iWMOtzI2duCHKtA+LVJOsg8n/zHqK9SZNF +w+Xud7mBi/ZvnFGwCZh7cqJ/jZhNLLTQHiLr8M+i7dKhAekFho8aarOV9V4Cp2hT +a8bQdbgwsednyjCzaq+C8xU+aYJcAV95qK6QG2hlT8xpDU2KHBHWIjDmPKlzgvKb +8/dQo5VDvtQkdyvrd9pMJeOUxFKEVW5ph+4LzKjKEWE1kJhzAwbxQMNKkXLzZJIa +hJMNAVHDjnYcuI8EgJT+TjH2Kx+KwHX/OEOFaDXGP7XwMOuVZTVtbXnsJ24SFa1i +m4U= +=0TBL +-----END PGP MESSAGE----- + ++